Soy el programador .1x en mi empresa. ¿Cómo puedo contribuir mejor? [cerrado]

61

Trabajo en una startup recién creada de cinco personas. Tenemos un doctorado en aprendizaje automático, un ex miembro del equipo central de RSpec y el tipo que compila el binario Git para OS X. Esos son solo los empleados; el fundador tiene un Ph. D y fue CTO de una corporación multimillonaria antes de partir para comenzar una (exitosa) startup, y ahora lo dejó para comenzar esta. También podríamos encontrar un tipo con un doctorado en matemáticas.

Aaaaaaaa y luego estoy yo, pasante que abandonó la universidad. Creo que soy bastante inteligente y leo sin parar, pero el delta de experiencia, habilidad y conocimiento entre mis compañeros y yo es simplemente impresionante.

Así que ponte en su lugar: tienes un joven interno brillante que tiene mucho que aprender pero que es al menos enérgico. ¿Qué sería molesto? ¿Qué utilidad esperarías sacar de él aquí y ahora? ¿Qué sería gratamente sorprendente si sucediera?

usuario invalido
fuente
32
Una de las cosas interesantes de las startups de fase temprana es que todo el mundo hace todo, porque hay muy poco personal en total. Tendrás muchas oportunidades para descubrir lo que haces bien que las otras personas no. Mientras tanto, preocúpese por crear un gran producto, no por la intimidación que siente por sus colegas.
James Youngman
3
Los trozos de papel no equivalen tanto a las acciones y habilidades demostrables, solo recuerda eso. Si demuestras algo, el papel es un tecnicismo.
66
eso es lo mejor de la vida, puedes aprender mucho de ellos. Y no pienses demasiado, solo haz lo que hacen todos los programadores.
Sufendy
44
Pareces Hawkeye rodeado de Thor, Capitán América, Hulk y Ironman. ¡Pero aún así, Hawkeye también es increíble! : D
bertzzie
20
"chico que compila el binario Git de OS X" == "chico que escribe 'make'"

Respuestas:

58

Cosa más importante:

No te dejes impresionar por los títulos. En poco tiempo, te darás cuenta de que tus compañeros de trabajo de doctorado también son humanos. Y algunas personas con un doctorado nunca crearon nada realmente útil. Siempre recuerda eso, no te sientas inferior.

¿Qué esperaría de ti? Para escribir un buen código y hacer las cosas. Lo más probable es que usted sea alguien que realmente esté trabajando, ya que se describe como enérgico. He visto a muchas personas con títulos que tardaron una eternidad en lograr tareas simples porque se concentraban demasiado en los detalles, etc. Dale un buen uso y entrega un buen código en un tiempo razonable y pronto todos te respetarán.

Pero no faltes al respeto a los demás. Es muy probable que sean mayores y probablemente puedas aprender cosas valiosas de ellos. Pero no te hagas cargo de nada sin pensar. Siempre trata de entender y pensar por ti mismo. Espero que copie los comportamientos y el conocimiento de ellos que realmente funcionan.

Halcón
fuente
1
+1 Tenía un doctorado en EE trabajando para mí por menos de 40k al año durante 2 años. Los títulos no significan nada: se trata de habilidades, competencia y habilidades de pensamiento crítico.
Jonathan Henson
3
Los títulos no significan nada. La educación no significa nada. La experiencia no significa nada. Las certificaciones no significan nada. Usar tus herramientas para producir resultados lo es todo.
Chuck Conway
Eso parece ... extrañamente sabio.
temporary_user_name
Del mismo modo que debe mostrar respeto a sus colegas, tiene derecho a esperar que correspondan. Nunca olvides que pueden aprender cosas de ti, casi seguro que no lo saben todo.
mattnz
41

La humildad recorre un largo camino

Con tu actitud humilde, dudo seriamente que seas molesto. La humildad recorre un largo camino. (Esto es cierto tanto para los hot-shots como para los pasantes).

Si su rol es explícitamente apoyar a los demás, puede estar seguro de ser útil simplemente preguntando. "¿Qué tarea molesta puedo quitar de tu plato?"

Otra cosa que encontrarás es que a la mayoría de la gente le encanta sentirse apreciada. Si realmente admira a los miembros de su equipo, puede salirse con la suya preguntándoles mucho y aprendiendo mucho de ellos. Se sentirán halagados, pero será genuino. También te ayudará a aprender y ser más útil.

Por último, saber menos que ellos puede ser útil en sí mismo. Por ejemplo, probablemente será mejor escribiendo documentación para las API, porque hará las preguntas que los extraños harían, pero que parecen demasiado obvias para los demás.

¿Y quien sabe? Puede descubrir que al tener una mentalidad de servicio, se convierte en un líder.

Nathan Long
fuente
77
+1 para "harás las preguntas que los extraños harían", lo cual es especialmente difícil para los expertos que trabajan duro y que están profundamente metidos en los detalles, que pueden pensar que están dando un paso atrás para ver el panorama general pero no están cerca cualquier idea de cómo se ven las cosas para los extraños (¡clientes!) nuevos en la cosa.
DarenW
17

Ya tienes muchas buenas respuestas. Creo que puedo contribuir compartiendo mi experiencia en una posición similar.

Antecedentes: estoy trabajando a tiempo parcial en un departamento de I + D de una empresa bastante grande desde hace unos años, mientras mi ocupación principal es estudiar CS. Las personas con las que trabajo la mayoría de las veces tienen doctorados o maestrías en EE, CS, matemáticas y física. Comencé como un novato completo, pero aprendí mucho en esos pocos años.

¿Qué sería molesto?

  1. Hacer preguntas que podría responder fácilmente usando Google
  2. Interrumpir a otros con demasiada frecuencia haciendo una pregunta. Si tiene una pregunta que no es un bloqueador, haga otro trabajo hasta que pueda hacer su pregunta sin interrumpir a la persona que pregunta. Puede recopilar algunas preguntas y luego pedir el tiempo de la otra persona o esperar hasta que la persona le pregunte sobre su progreso o sobre un buen momento para hablar con él, por ejemplo, cuando ya fue interrumpido por una llamada telefónica, en el final de un descanso, .. Entonces dile "Hice esto y aquello, pero actualmente estoy atrapado aquí y allá".
  3. Si se queda atascado (después de agotar google y otros recursos), asegúrese de pedir ayuda. Nada peor que descubrir que alguien ha estado atrapado durante 2 días en algo que podría haber resuelto en 5 minutos (por Neil White, en los comentarios)
  4. No intentes ser más inteligente que todos los demás.

¿Qué utilidad esperarías sacar de él aquí y ahora?

  1. Haga cosas que otros encuentren fáciles / molestas de una manera que realmente ayude al equipo. Eso es realmente todo.

¿Qué sería gratamente sorprendente si sucediera?

  1. Que haga la mayor parte de su trabajo de manera satisfactoria y que se involucre cada vez más en el trabajo del equipo.

Unos cuantos consejos más:

  1. Se humilde.
  2. Mostrar interés en el trabajo de los demás.
  3. Si te explican algo, asegúrate de entender. Si no lo hace, pídales que lo expliquen de una manera para que al menos tenga la idea básica.
  4. Ser confiable. Intenta hacer el trabajo lo mejor que puedas.
mort
fuente
3
Además del "¿Qué sería molesto"? Sugeriría otro: si te quedas atascado (después de agotar google y otros recursos), asegúrate de pedir ayuda. Nada peor que descubrir que alguien ha estado atrapado durante 2 días en algo que podría haber resuelto en 5 minutos.
Neil White,
@Neil: tienes toda la razón! ¿Te importaría si fusioné tu comentario en mi respuesta para que sea más completo?
mort
1
+1 para I did this and that, but currently I'm stuck here and there. Lo más importante es demostrar que ha intentado y comprende las respuestas.
Zenon
@mort ¡Claro, adelante!
Neil White
9

Buen consejo de otros hasta ahora. Para responder a sus preguntas específicas:

  • ¿Qué sería molesto?

Sería molesto si hicieras preguntas sin hacer tu tarea primero. Pedir ayuda después de hacer lo que pueda para resolver el problema primero está bien. Pero si alguien puede encontrar la respuesta a través de una simple búsqueda en Google o al leer el manual, entonces es molesto.

  • ¿Qué utilidad esperarías sacar de él aquí y ahora?

Supongo que ya tienes algún tipo de proyecto / tarea. Espero que puedas terminar esto con una supervisión mínima.

  • ¿Qué sería gratamente sorprendente si sucediera?

Una agradable sorpresa sería si terminaras tu trabajo temprano. Entonces podría trabajar en más proyectos con una complejidad creciente que demostraría su fiabilidad. Otra sorpresa sería si eres capaz de anticipar las necesidades del equipo y trabajar para satisfacerlas de manera paralela. ¿Necesita su equipo un entorno de compilación automatizado, un marco de prueba automatizado, configuraciones específicas de computadora / red para las pruebas, etc.? Estos pueden ser algo periférico

RonE
fuente
4

Respuesta corta: descubra lo que necesita el equipo y quizás lo que más le guste, y trabaje para proporcionarlo.

Respuesta más larga: en las primeras etapas de una puesta en marcha, la mayoría de las veces, todo el trabajo está "en juego"; Cualesquiera que sean las tareas que deban hacerse o las tareas que la gente quiera hacer están disponibles para todos los participantes. Sus preferencias pueden, literalmente, dar forma a la dirección que toma la empresa.

¿Interesado en RRHH? Asumir las tareas de contratación. O tal vez hacer la nómina. Interesado en la programación? Descubra qué idioma quiere usar el equipo. Intente escribir algunas pruebas unitarias para parte del código. ¿Odias escribir informes? Entonces no lo hagas. Vea si puede delegar esa tarea a otra persona y trabajar hacia una solución constructiva. Tómese un poco de tiempo y piense en lo que le gustaría hacer, luego pruébelo.

Una cosa a tener en cuenta es que cuando se trata de pequeñas empresas iniciales, hay mucho más que hacer que solo programar. Si quieres codificar, ¡genial! Si prefieres hacer otra cosa, ¡eso también es bueno! Aprende rápido, haz muchas preguntas y desafíate a ti mismo.

joshin4colours
fuente
1

No estoy seguro de cuán útil sería mi respuesta, pero he sido donde tú estás ahora. Rodeado de personas que sentí / conocí, tenía mucho más que contribuir de lo que nunca hubiera tenido. ¿Cómo actuar en esta posición? Disfrútalo en lugar de sufrir. En lugar de pensar cuánto no sabe, piense en lo que puede aprender y experimentar junto con estas personas. Úsalos como un recurso, sé respetuoso y trata de obtener cualquier información y experiencia, conviértete en una esponja ...

Ahora, esto no significa que deba dejar de intentar hacer cosas, pero cuando lo haga, trate de hacer que miren sobre su hombro y revisen su trabajo a medida que avanza. Intente completar un trabajo y luego escuche lo que tienen que decir al respecto: escriba los comentarios que le dan e intente implementarlos para crear un mejor código. No tenga miedo de hacer preguntas, solo sea respetuoso e intente hacer buenas preguntas, trate de absorber los datos y considere su pregunta inmediata antes de preguntar, tal vez la respuesta ya haya sido suministrada ... A la mejor gente le encanta enseñar, y yo Apuesto a que estarían encantados de compartir su conocimiento y filosofía de vida con usted.

En mi situación, traté de hacer eso, y cada vez que funcionó para mí, fui el más feliz, nunca entendí por qué me mantuvieron, pero tuve el mejor momento, y me gusta pensar que me convertí en un mejor programador e incluso hombre. Como resultado de esta experiencia.

Todo esto no quiere decir que debas subestimarte, probablemente eres mucho mejor de lo que crees, pero como la gente escribió aquí, los títulos y títulos no siempre son tan impresionantes en situaciones de la vida real y la humildad es muy importante. Así que sea respetuoso con todos, escuche, absorba, pero tome sus propias lecciones de la experiencia, a veces es mejor aprender lo que no debe hacer.

Buena suerte.

Moshe Eshel
fuente
1

Ya hay mucho presentado aquí, así que no repetiré lo que se ha dicho.

A simple vista, me parece que tiene expertos y un líder con habilidades / ideas de gestión. Eso es bueno, pero está incompleto .

Eres el pragmático: hazles la vida más fácil.

Hay al menos dos áreas que puede cubrir:

  • profundizando en los detalles técnicos del idioma elegido por la startup
  • mejorar la calidad del código y suavizar las esquinas difíciles de trabajar con él

Técnico

Esos tipos son expertos en sus campos, y esto es bueno, pero eso no significa que sepan codificar su salida de una bolsa de papel. Honestamente, he visto personas muy brillantes que escriben un código horrible que no se puede mantener.

Tienes la oportunidad de convertirte en el líder técnico aquí. Aprende el idioma adentro / afuera, hasta que conozcas todas sus sutilezas. Aprende los modismos que usa la comunidad. Investigue las bibliotecas útiles que existen por ahí.


Calidad

Hay tareas desagradecidas pero útiles:

  • ¿Quién mantiene el repositorio de código fuente?
  • ¿Quién escribe / mantiene las pruebas?
  • ¿Quién supervisa que pase el conjunto de pruebas? e identifica los cometidos culpables? y hacer ping a los delincuentes sin descanso?

Hay algunos pasos que ayudan, ya sean muy formales o no:

  • ¿Cómo revisas los commits? (¿hay una propiedad asociada con algunas áreas del código?)
  • ¿Cómo planeas el trabajo / tareas?

Hay muchas actividades periféricas en torno a tener ideas y escribir código.

Tienes la oportunidad de convertirte en el líder de calidad aquí. Conozca las mejores prácticas de la industria (un poco de "Agile", un poco de scrum, un poco de TDD, ...) y componga un proceso que se adapte a su empresa. Aprenda los sistemas de compilación (make, cmake, ninja, lo que sea) y escriba los scripts que facilitan la construcción / implementación. Verifique Jenkins (o lo que sea) y cree un servidor de integración continua.


Son impresionantes en sus respectivos dominios y eso es genial. Dado que en este momento no está especializado, ¡diría que es hora de que identifique las debilidades (también puede pedir sus opiniones) y llenar un (los) vacío (s)!

Matthieu M.
fuente