¿Cómo puedo salvar mi pasantía? [cerrado]

65

Actualmente estoy trabajando como pasante en una gran empresa de desarrollo sin software. La posición que solicité no era específicamente una posición de desarrollo, pero el equipo que me contrató quería una licenciatura en CS para ayudar a desarrollar algunos proyectos internos para ellos. He estado aquí durante cuatro semanas y el desconcierto inicial está empezando a desaparecer. Sin embargo, soy el único especialista en CS en toda la oficina: nadie en mi equipo, en el edificio o incluso en las ubicaciones vecinas tiene experiencia en el desarrollo de software. Lo mejor que tengo es un administrador de base de datos, y su departamento está demasiado ocupado para apoyarme con mis proyectos. Mis compañeros de equipo me están ayudando a aprender cómo hacen su trabajo (lo que es importante para mí hacer mi trabajo), pero no hay nadie que me ayude a hacer mi trabajo mi , es decir, el desarrollo.

Los proyectos que me han dado tienen un alcance mayor que cualquier cosa que haya hecho en la escuela. Eso, combinado con el hecho de que estoy trabajando solo, tratando de desarrollar aplicaciones desde cero sin ninguna forma de guía o incluso con objetivos claramente definidos, me preocupa mucho mi capacidad para tener éxito. Apenas sé dónde debería empezar, y ahora probablemente me quedan menos de dos meses.

Siento que debería estar aprendiendo el proceso de desarrollo de software, pero ahora mismo es como si me estuviera abriendo paso en la oscuridad. Esto es especialmente preocupante para mí ya que, en primer lugar, no tengo mucha confianza con mis habilidades de desarrollo. He estado investigando y enseñándome a mí mismo, pero solo estoy recibiendo partes y piezas. Tienen altas expectativas de mí, pero no estoy seguro de mi capacidad para cumplir. Obviamente, necesito sentarme y hablar con mis gerentes sobre la posición en la que estoy y tengo la intención de hacerlo lo antes posible (a menudo viajan y salen de la oficina).

¿Cómo debo lidiar con esto? Esta pasantía terminará antes de que lo sepa, y no quiero irme sin nada que mostrar por mi tiempo aquí. Ellos tampoco quieren eso, y siempre están disponibles para ayudarme, pero sin el conocimiento de la programación, solo hay mucho que pueden hacer. Tengo miedo de decirles que soy incapaz de producir lo que ellos quieren. ¿Cómo debo relacionar esto con ellos? Veo a los pasantes de ingeniería que reciben ayuda de otros ingenieros, aprenden a hacer su trabajo y siento que estoy aquí sentado esperando el momento oportuno. Cualquier consejo sobre cómo rectificar mi situación sería muy apreciado.

Actualizar

Aprecio todos los comentarios útiles de todos, me ayudó a tranquilizarme. Lo primero que hice fue reunirme con mis gerentes y supervisores. Discutimos lo que se esperaba de mi tiempo aquí. Comprenden que no tengo mucho tiempo como pasante, y esto ayudó a poner un alcance en el tipo de marco que queremos lograr, lo que permitirá a futuros pasantes o empleados construir con suerte lo que dejé. También abordé mis inquietudes con respecto a mis capacidades con el tiempo asignado, que ellos entendieron y esperaron.

Recibí una llamada del administrador de la base de datos en otra ubicación; mi gerente habló con su supervisor y ellos apoyarán mi proyecto, que ahora me dará un recurso para usar, así que no me quedo sin idea. Que estoy haciendo. Eso es solo una mitad. De todos los proyectos posibles, lo redujimos a los dos más importantes para trabajar. En cuanto a mi otro proyecto, como alguien mencionó, soy esencialmente el arquitecto de software líder, que es una situación única para un interno. Si las cosas van al menos semi-exitosas, creo que obtendré un gran conocimiento y experiencia que me puede ayudar con futuros empleadores. Por ahora, creo que tengo una base sólida para comenzar a investigar y desarrollar mis proyectos. ¡Gracias de nuevo por las respuestas de todos!

    
pregunta bhamlin 17.06.2013 - 15:43

8 respuestas

124

Tengo malas noticias para ti, bhamlin:

No eres un interno. Más bien, usted es un empleado no pagado / barato.

Una pasantía es una posición no remunerada o de baja remuneración en la que puede practicar sus nuevas habilidades adquiridas en un entorno seguro (generalmente) relajado, y tener la oportunidad de observar a profesionales "reales" en su campo haciendo un trabajo "real". mientras recibe comentarios sobre las piezas que le permiten modificar (generalmente bajo supervisión y / o aprobación).

Lo que su compañía quería, no era en realidad un pasante, sino una fuente gratuita / barata de desarrollo de software. Esto es bastante común , en mi opinión. Vivo en una ciudad universitaria, y en mi último lugar de trabajo, a menudo se escuchaba a los gerentes decir "Oye, el departamento de TI está demasiado ocupado para hacer el Proyecto X, veamos si podemos conseguir pasantes de la Universidad para ¡Escríbelo gratis / barato! " gruñiríamos, gemiríamos y rechinaríamos nuestros dientes al cielo, pero esta era la realidad del lugar, y podía entender por qué los gerentes sugerían tal cosa. Lamentablemente, los resultados no fueron excelentes: el software entregado por los internos nunca fue cohesivo / escalable / limpio / etc (pero, para ser sincero, tampoco fue lo que el departamento de TI publicó) ...

Depende de ti lo que haces. Mi consejo es que solo desarrolles lo que puedas (a veces la presión es un gran motivador), PERO también debes planear realizar una pasantía "real" en otro lugar cuando esta termine, si es posible.

Así que no te culpes, pero lo que encontraste NO fue una pasantía real.

    
respondido por el Graham 17.06.2013 - 15:53
28

Como estudiante principal de CS, tienes a tu disposición habilidades para resolver problemas. No está claro qué tipo de proyectos quieren desarrollar. Si tuviera que adivinar, probablemente quieran que ayudes a automatizar algunos de los procesos internos. Comenzaría por tratar de obtener un diagrama general de los procesos que existen actualmente y las dependencias entre los departamentos para cada uno de estos procesos.

A continuación, buscaría alguna fruta de baja altura que pudiera ser automatizada o al menos simplificada.

Manera infalible de documentar cualquier proceso

Haga estas preguntas en el siguiente orden:

  1. ¿Cuál es la salida? (Obtenga una respuesta lo más específica posible)
  2. ¿Cuáles son las entradas?
  3. ¿Hay suficientes entradas para crear la salida?

Si la respuesta al número 3 es NO , ve a buscar las piezas faltantes. Esto podría ser fórmulas o reglas de negocio o lo que sea.

Si la salida del paso uno es demasiado complicada, divídala en trozos manejables y ataque cada trozo como un proceso separado.

Documenta lo que has descubierto. Identificar posibles puntos únicos de fallas. Identificar debilidades o dependencias escasas.

Sé que suena abrumador pero tienes el conjunto de habilidades. Solo conviértelo en trozos pequeños. Si puedes aprender a explicar "cosas geek" usando "hablar no geek" entonces valdrás tu peso en oro.

    
respondido por el Michael Riley - AKA Gunny 17.06.2013 - 16:09
18

Esta es mi opinión sobre toda esta situación: piden más de lo que usted puede lograr razonablemente, no le dan ningún comentario ni orientación, y generalmente hacen que su trabajo no sea tan placentero. Pero hay un lado positivo en esta nube Estás aprendiendo algo.

Particularmente, estás aprendiendo el tipo de entorno en el que NO QUIERES trabajar cuando te gradúas. También está aprendiendo cómo lidiar con un proyecto que es demasiado grande para que pueda realizarlo de manera factible. Ambos son elementos importantes de conocimiento a los que se aferra, ya que nadie le va a dar un trabajo que piensan que está por debajo de su capacidad. Siempre pedirán más de lo que puede dar, y es su trabajo trabajar con ellos para gestionar las expectativas y entregar lo que ellos desean.

A lo que puedes hacer aquí y ahora. Comenzaría por mantener un diario de todo lo que haces en cada día. Esto te da la responsabilidad. Incluso un simple final del día "esto es en lo que trabajé hoy" le dará algo en que apoyarse cuando no consiguen lo que quieren y vienen a buscar respuestas.

También hablaría con tu superior inmediato y vería si hay alguna manera de descomponer uno de estos proyectos más grandes . Si no te sientes cómodo haciéndolo todo, quizás solo te hagan investigar y la arquitectura del proyecto, y quizás tengan otro interno que lo implemente más tarde. Solo tenga claro lo que cree que puede lograr razonablemente en el tiempo que le queda en la pasantía, y haga de eso su objetivo. De esa manera, al final del día, todavía está entregando algo relevante para su empleador.

Finalmente, vea si puede unirse a los pasantes de ingeniería . Asumiré que estos internos también están desarrollando software, y no veo ninguna razón por la que lo que estás haciendo y lo que están haciendo esté tan separado que no puedas aprender unos de otros. Trabajo con ingenieros eléctricos, ingenieros de software, ingenieros informáticos y científicos informáticos en mis proyectos, y cada persona aporta sus propias fortalezas al equipo. Identifique dónde se encuentran sus fortalezas en el desarrollo e intente explicar por qué esas habilidades se prestan bien al equipo de ingeniería.

    
respondido por el Ampt 17.06.2013 - 16:58
13

Hable con su asesor de prácticas

Todas las respuestas que he visto hasta ahora parecen centrarse en el empleador, lo cual es importante.

Sin embargo, debe haber sido establecido con esta pasantía a través de un programa u oficina en su escuela. No puedo imaginar que serías el primer estudiante que tuvieron que se haya encontrado con este tipo de situación. Deben poder guiarlo en una dirección determinada.

Incluso si no pueden ayudarte ahora (lo cual me resulta difícil de creer), entonces estarás ayudando al próximo alumno que se encuentre en esta situación, que es algo que no se puede subestimar.

    
respondido por el Wonko the Sane 17.06.2013 - 21:48
10

Tuve dos pasantías como esa, y las disfruté inmensamente. Hay lados brillantes significativos que parecen faltar:

  • En este momento, está disfrutando del tipo de libertad creativa con la que los programadores que trabajan en grandes equipos de programadores solo pueden soñar. Todo depende de usted, desde la elección del idioma, el control de la fuente, los editores y la arquitectura del software. Confía en mí, lo extrañas cuando se ha ido.
  • Trabajar con personas que no saben mucho sobre software es una parte importante del proceso de desarrollo de software. La escuela le permite esperar tareas bien definidas de personas con mucha experiencia en el desarrollo de software de enseñanza. Incluso en equipos de programadores, sus tareas nunca son tan claras. Aprender a lidiar con eso ahora te dará una ventaja.
  • La adquisición de conocimientos de dominio sin el beneficio de los mentores es una parte importante del proceso de desarrollo de software. Una vez cada año o dos, recibo una tarea como "Conviértete en nuestro experto en la materia en tecnología X". Alguien tiene que ser el primero en una empresa en aprender una nueva tecnología. Obtendrá más tareas interesantes si puede demostrar que esa persona puede ser usted.
  • Desde su punto de vista, se siente como mucha presión, pero debe saber que sus expectativas de usted son realmente bajas. Saben que es más difícil para ti sin un mentor adecuado. Solo haz lo mejor que puedas y estarás bien.

Dicho esto, abordar tu primer gran proyecto puede ser abrumador. Lo siguiente puede ayudar:

  • Trate de no pensar en todo el proyecto a la vez. Piense en lo que necesita hacer ahora mismo.
  • Obtenga una lista de las funciones que deben realizarse y haga que se pongan en orden prioritario. De esa manera, si no terminas la aplicación completa, las características más importantes seguirán estando allí.
  • Divida la primera característica en tareas cada vez más pequeñas, hasta que termine con las tareas que puede terminar en uno o dos días. No tengas miedo de hacerlos parecer estúpidamente simples. Mi primera tarea en proyectos completamente nuevos es conseguir que hello world funcione y verifique el control de código fuente. Especialmente si es un nuevo idioma, o uno que no he usado en mucho tiempo, eso me dice que mi entorno de compilación y las herramientas están configuradas correctamente.
  • Obtenga su progreso revisado con frecuencia. No intente tirar un producto terminado sobre ellos al final del verano. Muéstrales al menos una vez por semana lo que tienes hasta ahora.
  • Haga un esfuerzo inicial para tratar de encontrar proyectos y componentes existentes que puedan satisfacer sus necesidades. Es mucho más fácil personalizar un sistema existente que hacerlo desde cero. Muchas compañías necesitan tipos de aplicaciones internas similares. Este es uno que desearía haber sabido por mí mismo. Uno de mis proyectos de pasantía básicamente reinventó (pobremente) un CRM .

Entonces, relájate, haz lo mejor que puedas, y aprende todo lo que puedas, ya sea sobre el software o no.

    
respondido por el Karl Bielefeldt 18.06.2013 - 00:43
6

Las otras respuestas aquí son muy buenas, léalas una y otra vez y realmente intenta resolverlas. Si lo hace, entonces, con un esfuerzo superior al promedio, podrá salir "vivo" al otro lado de su pasantía. Dada su situación, será más difícil de lo que esperaba, pero puede valer la pena.

Esto es crucial porque, cuando solicite un puesto en otra compañía 1 , una de las preguntas clave será:

  

Veo que hiciste una pasantía en la empresa X. ¿Cómo fue? Por qué   te fuiste?

Si puede demostrarles que manejó su difícil situación de una manera profesional, esto contará MUCHO , los empleadores generalmente están muy impresionados con algo como esto.

Incluso si es un poco horrible, puedes convertirlo en una experiencia valiosa, desde la cual tienes la oportunidad de aprender lo que tus compañeros nunca lo harán ...

1 = Espero que lo hagas, porque permanecer allí será un suicidio profesional (tarde o temprano ... probablemente antes)

    
respondido por el Radu Murzea 17.06.2013 - 19:49
5

Estuve en una posición similar el año pasado, donde tuve que desarrollar todo desde cero y no tenía a nadie más con experiencia en desarrollo. Terminé el proyecto que me dieron, pero no lo llamaría una aplicación pulida ni siquiera mantenible (ya que la única persona que sabe cómo funciona soy yo y nadie en la empresa ha mirado el código).

Aquí hay algunas cosas que hice y que haría si estuviera en esa situación. Algunos de estos ya han sido mencionados en las respuestas anteriores

Averiguar:

  • ¿Qué quieren que haga el producto (entradas y salidas, mínimo? )
  • ¿Cuáles son tus limitaciones? (es decir, ¿qué programas puede / no puede usar?)

Esto le dará una idea de cómo debería lucir el producto. Dibuje esto en un pedazo de papel y muéstrelo a su gerente / supervisor. Mira lo que dicen al respecto. Si no les gusta, pregúnteles qué quieren cambiar, cámbielos y repita el proceso. Si les gusta, realice la cantidad mínima de codificación y cree una simple demostración.

Muéstrales la demostración (pregúntales si es esto lo que tienen en mente), esto les mostrará tu progreso y te ayudará a entender lo que quieren.

Siempre que necesite ayuda con la codificación, lea los manuales / tutoriales, busque en Google y finalmente publique en el desbordamiento de pila para obtener ayuda.

No te preocupes por los pequeños detalles. Perderás mucho tiempo si haces esto.

Código en trozos pequeños , cada trozo es una funcionalidad importante para la aplicación.

Comente su código. Si planean pasar esto a otro interno o empleado, será de gran ayuda para ellos.

Siga comunicándose con su gerente / supervisor sobre el proyecto y su progreso en él.

Y no te preocupes si no puedes terminar el proyecto, eres un interno y has hecho lo mejor que puedes. Tienen la culpa de contratar a alguien que tiene poca experiencia en este tipo de proyecto.

TL;DR

  • Comunícate con tu administrador cada paso

  • Codifique la funcionalidad principal

  • Obtén ayuda de Google y el intercambio de pila

  • No te preocupes si no puedes terminar

respondido por el stackErr 17.06.2013 - 21:46
1
  1. Solicite aclaraciones sobre los objetivos de la pasantía: ¿por qué se le asignaron tantos proyectos?
  2. Aclare a la gerencia que dentro del tiempo asignado, no puede completar los proyectos solicitados
  3. Prepare un análisis de cómo usar mejor su tiempo. Por ejemplo, sugiera trabajar únicamente en un proyecto y abandonar los demás.

Su tiempo ayudaría mejor a su empresa si trabajara únicamente en un proyecto pequeño. Asegúrese de mantenerlo bien documentado. Concéntrese en crear documentación útil de arquitectura, objetivos de proyecto, progreso del proyecto y código fuente.

    
respondido por el KyleM 18.06.2013 - 00:55

Lea otras preguntas en las etiquetas