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

61

Trabajo en una startup de cinco personas. Tenemos un doctorado en aprendizaje automático, un antiguo miembro del equipo central de RSpec y el tipo que compila el binario Git para OS X. Eso es solo los empleados; el fundador tiene un Ph. D y fue director de tecnología de una corporación de miles de millones de dólares antes de partir para iniciar una empresa (exitosa), y ahora ha dejado eso para comenzar esta. También podríamos conseguir un chico con un Ph. D en matemáticas.

Aaaaaaaa y luego estoy yo, pasante de deserción de la universidad. Creo que soy muy inteligente y estoy leyendo sin parar, pero el delta de experiencia, habilidad y conocimiento entre mis compañeros y yo es impresionante.

Así que ponte en su lugar: tienes un joven interno brillante que tiene mucho que aprender pero al menos tiene mucha energía. ¿Qué sería molesto? ¿Qué uso esperas sacarle de él aquí y ahora? ¿Qué sería gratamente sorprendente si sucediera?

    
pregunta invaliduser 13.05.2012 - 22:04

7 respuestas

58

Lo más importante:

No te dejes impresionar por los títulos. En poco tiempo, se dará cuenta de que sus compañeros de trabajo de Ph. D también son humanos. Y algunas personas con un Ph. D nunca crearon realmente algo útil en la práctica. Recuerda siempre eso, no te sientas inferior.

¿Qué esperaría de ti? 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 a sí mismo como enérgico. He visto a muchas personas con títulos que se tomaron la eternidad de lograr tareas sencillas porque se centraban demasiado en los detalles, etc. Pongan un buen uso y entreguen un buen código en un tiempo razonable y pronto todos lo respetarán.

Pero no faltes al respeto a los demás. Probablemente sean mayores y probablemente puedas aprender cosas valiosas de ellos. Pero no tomes 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.

    
respondido por el Falcon 13.05.2012 - 22:11
41

La humildad va muy lejos

Con tu humilde actitud, dudo seriamente que seas molesto. La humildad va muy lejos. (Esto es cierto tanto para los hot-shots como para los internos).

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

Otra cosa que encontrarás es que a la mayoría de las personas les encanta sentirse apreciados. Si realmente admiras a los miembros de tu equipo, puedes pedirles mucho y aprender 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, es probable que sea mejor en la redacción de documentación para las API, porque hará las preguntas que harían personas externas, pero que parecen demasiado obvias para los demás.

¿Y quién sabe? Puede descubrir que al ser un sirviente, se convierte en un líder.

    
respondido por el Nathan Long 14.05.2012 - 03:33
17

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

Fondo: Estoy trabajando a tiempo parcial en un departamento de I + D de una empresa bastante grande desde hace unos años, mientras que mi principal ocupación es estudiar CS. Las personas con las que trabajo la mayor parte del tiempo tienen un doctorado o una maestría en EE, CS, Matemáticas y Física. Comencé como un noob completo, pero aprendí mucho en esos pocos años.

¿Qué sería molesto?

  1. Haciendo preguntas que fácilmente podría contestarme usando Google
  2. Interrumpir a otros con demasiada frecuencia al hacer una pregunta. Si tiene una pregunta que no es un bloqueador, haga algún otro trabajo hasta que pueda hacer su pregunta sin interrumpir a la persona que le pregunta. Puede recopilar algunas preguntas y luego preguntar por la hora de la otra persona o esperar hasta que la persona le pregunte sobre su progreso o por un buen momento para hablar con él, por ejemplo. cuando ya fue interrumpido por una llamada telefónica, al final de un descanso, ... Dígale "Hice esto y lo otro, pero actualmente estoy atascado aquí y allá".
  3. Si se atasca (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 trates de ser más inteligente que todos los demás.

¿Qué uso esperas sacarle de él aquí y ahora?

  1. Haga cosas que a otros les parezcan 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 se involucre más y más en el trabajo del equipo.

Algunos consejos más:

  1. Sé humilde.
  2. Mostrar interés por el trabajo de los demás.
  3. Si te explican algo, asegúrate de que lo entiendes. Si no lo hace, pídales que se lo expliquen de manera que tenga al menos la idea básica.
  4. Sé confiable. Intenta hacer el trabajo tan bien como puedas.
respondido por el mort 14.05.2012 - 09:41
9

Buen consejo de los demás 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 todo lo posible 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, es molesto.

  • ¿Qué uso esperas sacarle 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 sorpresa agradable sería si terminaste tu trabajo temprano. Entonces podrá trabajar en más proyectos con una complejidad cada vez mayor, lo que demostraría su confiabilidad. Otra sorpresa sería si puede anticipar las necesidades del equipo y trabajar para satisfacerlas en el lateral. ¿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 cosa periférica

    
respondido por el RonE 14.05.2012 - 08:51
4

Respuesta corta: averigüe qué necesita el equipo, y quizás lo que más le guste, y trabaje para lograrlo.

Respuesta más larga: en las primeras etapas de un inicio, la mayor parte del tiempo, todo el trabajo está "en juego"; Las tareas que se deben realizar o las tareas que la gente quiere hacer están disponibles para todos los usuarios. Sus preferencias pueden, literalmente, dar forma a la dirección que toma la empresa.

¿Interesado en recursos humanos? Asumir las tareas de contratación. O tal vez hacer la nómina. ¿Interesado en la programación? Averigüe qué idioma quiere usar el equipo. Intenta escribir algunas pruebas unitarias para algunos de los códigos. ¿Odia 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 podría querer hacer, luego pruébelo.

Una cosa que se debe tener en cuenta es que cuando se trata de empresas muy pequeñas que se inician temprano, 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.

    
respondido por el joshin4colours 13.05.2012 - 22:49
1

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

Ahora, esto no significa que tengas que dejar de intentar hacer cosas, pero cuando lo hagas, trata de que miren por encima del hombro y revisen tu trabajo a medida que avanzas. Trate de completar un trabajo y luego escuche lo que tienen que decir al respecto, escriba los comentarios que le dan y trate de implementarlos para crear un mejor código. No tenga miedo de hacer preguntas, solo sea respetuoso y trate de hacer buenas preguntas. Intente absorber los datos y considere su pregunta inmediata antes de hacer la pregunta. Tal vez la respuesta ya se proporcionó ... La mejor gente le encanta enseñar, y yo apuesto a que estarían encantados de compartir sus conocimientos y su filosofía de vida con usted.

En mi situación traté de hacer eso, y siempre que funcionaba para mí, era el más feliz, nunca entendí por qué me mantenían, pero lo pasé en grande, y me gusta pensar que me convertí en un mejor programador e incluso el hombre como resultado de esta experiencia.

Todo esto no quiere decir que deba subestimarse. Probablemente sea mucho mejor de lo que cree, 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 va mucho. camino. Entonces, sea respetuoso con todos, escuche, absorba, pero tome sus propias lecciones de la experiencia, a veces es mejor que aprenda lo que no debe hacer.

Buena suerte.

    
respondido por el Moshe Eshel 14.05.2012 - 16:59
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 .

Tú eres el pragmático: haz su vida más fácil.

Hay al menos dos áreas que puedes cubrir:

  • profundizando en los detalles técnicos del idioma elegido por la startup
  • mejore la calidad del código y suavice los rincones del trabajo con él

Técnico

Esos tipos son expertos en sus campos, y esto es bueno, pero eso no significa que sepan cómo salir de una bolsa de papel. Honestamente, he visto a gente muy brillante escribir código horrible e impensable.

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. Investiga las bibliotecas útiles que existen por ahí.

Calidad

Hay tareas ingratas pero útiles:

  • ¿quién mantiene el repositorio de código fuente?
  • ¿quién escribe / mantiene las pruebas?
  • ¿quién controla que pase la suite de prueba? e identifica los cometidos culpables? y hacer ping a los infractores implacablemente?

Hay algunos pasos que ayudan, ya sea muy formal o no:

  • ¿Cómo revisa los compromisos? (¿existe una propiedad asociada con algunas áreas del código?)
  • ¿Cómo planifica el trabajo / las tareas?

Hay muchas actividades periféricas relacionadas con 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 (poco de "ágil", poco de scrum, poco de TDD, ...), y componga un proceso que se ajuste a su empresa. Aprenda a construir sistemas (make, cmake, ninja, lo que sea) y escriba los scripts que facilitan la construcción / implementación. Comprueba Jenkins (o lo que sea) y crea 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 rellene un (s) espacio (s)!

    
respondido por el Matthieu M. 15.05.2012 - 08:43

Lea otras preguntas en las etiquetas