Ay de un desarrollador junior: ¿es posible que no se corte para programar? [duplicar]

59

(Permítame comenzar preguntando: sea amable, sé que esto es subjetivo, pero está pensado para incitar a la discusión y proporcionar información a otros. Si es necesario, se puede convertir en wiki de la comunidad).

Recientemente fui contratado como desarrollador junior en una empresa que realmente me gusta. Comencé en el campo haciendo control de calidad y me convertí en más y más trabajo de desarrollo, que es lo que realmente quiero terminar haciendo. Lo disfruto, pero cada vez más me cuestiono si soy realmente bueno o no. Parte de esto sigue creciendo en el rol de desarrollador junior, lo sé, pero ¿cuánto? ¿Qué esperan los desarrolladores junior, qué deberían hacer y no hacer? ¿Qué puedo hacer para mejorar y mostrar a mi empresa que tomo en serio esta oportunidad? Odio que les esté costando tiempo al ponerse al día. Otros me han dicho que las empresas invierten en desarrolladores Junior y no esperan que paguen por un tiempo, pero ¿cuánto de esto es cierto? Tiene que haber un punto en el que sea evidente si la inversión dará sus frutos o no.

Hasta ahora he estado tratando de hacer tantas preguntas como pueda, pero he estado obsesionado con un problema simple durante algún tiempo y los demás saben que, llega un momento en que es bastante embarazoso tenerlo. Para obtener ayuda después de luchar tanto tiempo. También he intentado ser lo más abierto posible a las sugerencias y trabajar con otros para tratar de refactorizar mi código, pero a veces esto puede ser difícil chocar con las opiniones personales de varios miembros del equipo (alguien me dijo que lo escriba de una manera y luego hacer que alguien más te haga reescribirlo).

A menudo me siento demasiado estresado y me juzgo con dureza, pero no quiero tener que luchar el resto de mi vida tratando de hacer que las cosas funcionen si no tengo el talento. Según su experiencia, ¿la programación es algo que casi todos pueden aprender, o algo que algunas personas simplemente no entienden? ¿Los demás se sienten de esta manera o te sientes así al comenzar? Me asusta que no tenga otras habilidades laborales si no soy adecuado para tener las habilidades necesarias para codificar bien.

    
pregunta gnat 14.01.2011 - 04:05

11 respuestas

45

¿Algunas personas tienen un don para la programación? Absolutamente.

Si no tienes la habilidad de hacerlo, ¿puedes ser un gran programador? Sí, pero tomará más práctica.

De cualquier manera, ser realmente bueno en programación lleva tiempo . Es como tocar un instrumento. ¿Son algunas personas naturalmente dotadas? Sí. Pero muchos de los grandes solo practicaron por más tiempo y más duro. La programación es de la misma manera, requiere práctica.

Para el resto de su carrera de programación, el campo cambiará. En muchos puntos de tu vida serás el chico nuevo, no importa si alguna vez fuiste el experto. Muchos programadores "junior" en C # hoy fueron expertos en Foxpro u otros idiomas. Los expertos en C # de hoy algún día serán programadores junior en otro idioma. Todos cometemos errores y hacemos cosas estúpidas que otros señalarán. Con el tiempo llegarás a entender el código bueno y lo malo. Podrá tener argumentos divertidos con las personas en la revisión del código y respaldar por qué su código es mejor que su sugerencia y demás, pero requiere tiempo, determinación y persistencia. El talento ayuda, pero a veces el talento se disfraza de trabajo duro con el tiempo.

No se desanime como programador junior. Comete esos errores. Aprende de ellos. Ensuciarse. Que te diviertas. Todos hemos estado allí y todos llegamos a puntos en nuestro código donde tenemos que pedir ayuda. Es por eso que StackOverflow y otros sitios en línea son tan populares. Muchas veces los programadores tenemos grandes egos. Preferimos preguntar en línea donde nadie puede reírse de nosotros (y saber quiénes somos) que preguntar a nuestro compañero de trabajo, así que no se sienta mal por no saber algo. Después de todo, los programadores solucionan problemas, no lo saben todo, ¡por eso tenemos habilidades de Google!

Sinohizoclicenelúnicoenlacedemirespuesta,lesugieroquelea Peter Norvig. en diez años .

    
respondido por el Ryan Hayes 14.01.2011 - 04:30
19

Respuesta corta: Sí, es posible que alguien simplemente no obtenga el software.

Sin embargo, sería presuntuoso de mi parte decir que estás en ese escenario. Me parece que no estás en un ambiente muy enriquecedor. Idealmente, los desarrolladores más avanzados deberían tomarte bajo su ala y mostrarte las cuerdas. Suena como si estuvieras siendo arrojado al final profundo sin soporte vital. A menudo hay una gran curva de aprendizaje que va de la universidad a la industria o de un evaluador a otro y puede ser intimidante principalmente porque te das cuenta de lo poco que sabes realmente ... al menos esa fue mi experiencia.

Hacer preguntas es lo mejor para demostrar que eres serio. Me doy cuenta de que a veces puedes sentir que la pregunta es tonta o trivial, pero todos hemos estado allí. Además, comunícate con tu jefe! Exprese que desea saber cómo mejorar y configurar un plan. Cualquier buen jefe estará dispuesto a ayudarlo a establecer metas concretas con respecto al desarrollo profesional.

Además, cuando los compañeros de trabajo lo ayudan a reformular el código o resolver un problema, asegúrese de comprender por qué le están diciendo ciertas cosas. No solo lo codifiques de una manera porque ellos lo dijeron. Si dos compañeros de trabajo tienen opiniones diferentes, pídales que le cuenten por qué piensan de manera diferente.

Creo firmemente que un conjunto claro de objetivos y alguna dirección harán maravillas con su situación actual.

    
respondido por el Pemdas 14.01.2011 - 04:44
8

¿Sabes ese dicho, "quien descubrió el agua, seguro que no era un pez"? Es prácticamente imposible para ti diferenciar entre estos tres escenarios:

  • bien encaminado, haciendo preguntas, mejorando, todo va a ser genial
  • trabaje con idiotas, tenga el talento para crecer en un entorno mejor, condenado aquí
  • simplemente no es un programador y no lo va a conseguir

He empleado a alguien en esa última categoría. Pasamos seis meses llegando a la conclusión de que, aunque era amable, nos gustaba, era inteligente y lo intentaba a la perfección, simplemente no iba a suceder.

Si hay alguien en quien pueda confiar en esta conversación, hágales la siguiente pregunta: "Sé que cometo errores y hay cosas que no sé, pero ¿estoy cometiendo los mismos errores? ¿Hay algo en lo que no me guste constantemente? ¿No sabes? Una respuesta honesta a eso te dirá lo que necesitas saber. He tenido juniors que nunca cometen el mismo error dos veces. Lo hacen bien ¿Y el buen chico al que finalmente despedí? Tenía una colección de 3 o 4 errores que se repetían y se repetían y repetían. No vio el patrón, no importa cuántas veces se le dijo y cuántas autopsias tuvimos.

Querer hacerlo bien es una buena señal. Por el momento, haz lo mejor que puedas, aprende donde puedas y confía en quienes te rodean para que te evalúen. Solo ten en cuenta que si deciden que no estás preparado para esto, podrían estar equivocados. Usted podría prosperar en un entorno diferente. (El chico al que despedí está en ventas y soporte ahora y un poco como una superestrella por lo que escucho). Caramba, podrías comenzar a prosperar en este mañana. Cuando haga clic, estarás mucho más feliz.

    
respondido por el Kate Gregory 14.01.2011 - 13:57
3

¡Aguanta ahí! El hecho de que te estés cuestionando, es para mí, una muy buena señal. Ahora soy un gerente senior y las mejores señales de junior son que están aceptando que necesitan mantenerse abiertos y sabiendo que necesitan aprender más.

Recuerdo cuando comencé la vida como programador junior, y todo parece tan grande y enorme, y otros en el equipo parecen saber mucho y les resulta natural. Esa percepción del conocimiento es solo experiencia. El tiempo y la mente abierta te darán eso.

A menudo doy esta analogía para ayudar a los jóvenes, a menudo se siente como si estuvieras a punto de subir una gran montaña. Se ve la altura con picos nevados y ningún camino visible hasta la cima. La mayoría de la gente piensa, tengo que equiparme con todo el equipo de escalada que necesito, así que comience a preocuparme por ese equipo antes de partir. Les digo que solo miren los primeros 100 metros que pueden ver y que me digan qué necesitarían y caminar. Luego notará que la parte tiene una ruta que está bien transitada y tiene muchos mapas disponibles.

Pierde toda la necesidad de equiparte como "profesional" y comienza a caminar.

    
respondido por el jpg 14.01.2011 - 07:11
3

¿Qué tan grande e intrincado es el código base que acabas de presentar? Eso puede jugar un gran factor (especialmente si hay una falta de documentación)

A menudo siento que hay una guerra silenciosa entre los juniors y los seniors. Se trata de cosas insignificantes, como personas que intentan colocarse en un pedestal y hacer que intenten mostrar su propio valor.

Piensa en cualquier falta de documentación como una broma práctica que jugaron contigo antes de que incluso te convirtieras en un desarrollador junior.

Estas personas no son maestros; Son tan territoriales como cualquiera de los otros palos y no lo cuestionan ni un segundo. Claramente, nadie te ha tomado bajo su ala y todavía tienes un trabajo que hacer. Es posible que desee dirigirse al jefe de las personas mayores y expresar algunas de sus preocupaciones generales. Si haces eso y luego te despiden meses después, habrá muchas preguntas. Si permanece callado, puede parecer que no le importa (lo que claramente le importa)

Tu mejor apuesta es matarlos con amabilidad y hacer que las contribuciones al código fuente sean lo más limpias posible, para que nadie tenga nada que decir. Cuantas menos críticas escuche, más cerca estará de ser un desarrollador senior.

    
respondido por el user13203 14.01.2011 - 06:22
1

La primera pregunta que debe hacerse es: "¿Soy lo suficientemente bueno para ser programador?", es "¿Realmente quiero ser un programador?". Si no quieres ser un programador (como es el caso, tus padres querían que lo hicieras por el prestigio o pensaste que ganarías mucho dinero), entonces tienes tu respuesta. Si do quiere ser programador, continúe leyendo porque le mostraré lo que queda por hacer.

He estado leyendo Las aventuras de Johnny Bunko de Daniel Pink (es un libro de carrera ya que probablemente no puedas decir por el título). En ella, hay 6 lecciones. Tres de ellos parecen particularmente relevantes:

  1. Piensa en las fortalezas, no en las debilidades.
  2. La persistencia triunfa sobre el talento.
  3. Comete errores excelentes.

La primera lección es el lugar para comenzar. Si te enfocas en las cosas que estás haciendo mal, nunca llegarás a ninguna parte. No importa lo que hagas, siempre tendrás las mismas fortalezas y debilidades. No hay ningún motivo para golpearte por tus debilidades. Por lo tanto, en lugar de suavizar sus debilidades, su enfoque principal debe basarse en sus fortalezas. Siéntate y descubre cuáles son. No me refiero en términos de campo ("programador" o "contador"). Ve más profundo que eso. ¿Eres bueno definiendo procesos lógicos? ¿Se te ocurren nuevas ideas? ¿Ejecutando las ideas de otros? Cuando sepa cuáles son sus puntos fuertes, averigüe cómo puede aplicarlos a la programación (nuevamente, suponiendo que eso es lo que desea hacer).

El siguiente es que la persistencia triunfa sobre el talento. Cualquiera que esté apasionado por lo que hacen llegará al punto en el que estás ahora. Siempre habrá alguien que va a ser un desilusionado por una razón u otra, ya sea que estén amenazados por ti o que sientan que no eres lo suficientemente talentoso. Además, los desafíos siempre surgen sin importar lo talentoso que seas. Si eres persistente, es probable que tengas una ventaja sobre las personas que no son persistentes pero tienen talento.

Por último (y creo que este es el que las personas mayores olvidarán), cometen errores excelentes. Probar algo nuevo que no funciona es un excelente error porque puedes aprender de ello. Ir a la cárcel por piratear el servidor de un empleador y dejarlo sin empleo no lo es. Las personas mayores a menudo intentarán evitar que cometas errores. Si bien tienen buenas intenciones, pueden ser como padres sobreprotectores que nunca dejan que sus hijos salgan a la calle. Para realmente aprender cosas, necesitas cometer los errores tontos. Probablemente encontrará que muchas veces los consejos de los adultos mayores simplemente no se aplican, no porque sean malos consejos, sino más porque son consejos que se adaptan a ellos y no a usted.

    
respondido por el Jason Baker 14.01.2011 - 08:31
1
  

En tu experiencia, esta programando   algo que casi todos pueden   aprender, o algo que algunas personas   simplemente no entiendes?

En mi opinión, no todos pueden convertirse en programadores. Pero una cosa es segura: la programación es un campo que requiere mucha paciencia y concentración, y si tiene eso, entonces estará seguro.

Cuando comencé mi carrera hace un par de años atrás, también llegué a situaciones en las que creo que puedo sobrevivir en este campo, pero a medida que avanza el tiempo y me esfuerzo por aprender, me convierto en una parte esencial de mi equipo. Es difícil mejorar tus habilidades leyendo libros, estudiando publicaciones en blogs, sigue a los gurús de tu tecnología en twitter

    
respondido por el Fraz Sundal 14.01.2011 - 08:33
1

"Si te enfocas en las cosas que estás haciendo mal, nunca llegarás a ningún lado".

Esté cansado de este consejo. En mi experiencia he encontrado exactamente lo contrario. El código incorrecto y el diseño incorrecto a menudo se pueden atribuir a un programador simplemente evitando un enfoque con el que se sienten incómodos.

En lugar de dedicar tiempo a mejorar sus habilidades en general, a crear una colección de herramientas, tienen su único martillo y tratan de convertir todo en un clavo. No caigas en esta trampa.

Encuentra las cosas en las que eres malo y practica precisamente esas cosas.

    
respondido por el JRB 18.06.2013 - 22:11
1

Este es un tema antiguo, pero quería agregar mis 2 centavos en caso de que alguien se tope con esto en una búsqueda de Google.

Los desarrolladores con los que trabajo son bastante útiles y están abiertos a dar una mano. Todos tenemos fortalezas en lugares diferentes, por lo que estamos abiertos a ayudarnos unos a otros. Si puede aprender algo que las otras personas de su equipo no saben pero podrían serle de utilidad, podría aflojarlas y hacer que estén más dispuestas a dar y recibir. Si estás en una posición de nivel de entrada, lo absorbería y no permitiría que te afecte. Cuando abandones esta posición, la siguiente será con una pizarra limpia. Por lo tanto, me quedaría y aprendería todo lo que pudiera y obtendría la mayor experiencia posible para que en su próximo concierto, tenga más experiencia y tenga una mejor base.

Realmente no creo en presentar quejas con la administración sobre su repertorio con compañeros de trabajo. La gerencia lo verá como un chismoso que no puede llevarse bien con los demás. Sus supervisores no son niñeras, por lo que si hay un problema cultural tan grande en su entorno, no quiere ser parte de él. No puede esperar que la administración venga con una respuesta mágica para obligar a sus compañeros de trabajo a que lo respeten. He estado en algunas posiciones en las que no sentí que me sentía con el equipo. Solo empaco y me muevo. Sean cuales sean sus limitaciones culturales, eso no me permitirá ser tratado como si fuera igual ... ese es su problema. ¿Quién soy yo para entrar e intentar cambiarlos para que se ajusten a mí? Su situación parece una excepción a la norma, por lo que no asumo que será así en todas partes.

Mi experiencia es que la mayoría de los programadores son EXTREMADAMENTE pretenciosos. Incluso si sabes absolutamente lo que estás haciendo, si no lo haces a su manera, se pondrán en tu cara y actuarán como si fueras un idiota estúpido que no sabe lo que estás haciendo. La mayoría de las respuestas que ves en los foros son indicativas de eso. Por cada respuesta útil que atiende a un problema de desarrollo en un tablero de mensajes, verá 10 respuestas pretenciosas de personas mocosas que quieren burlarse y decir lo que puedan para aumentar su propio ego. De hecho, estoy convencido de que 3/4 de cada respuesta a una pregunta en un tablero de mensajes critica la formación de la pregunta, se queja de que la pregunta no está publicada en el lugar correcto, se queja de que la pregunta ya se hizo una pregunta. hace mucho tiempo y, por lo tanto, nunca se debe volver a preguntar, o es un enlace a otro panel de mensajes donde se responde a la pregunta con algún tipo de comentario como "Aprende a usar Google, ¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡ No hago preguntas en los foros a menos que sea absolutamente necesario. Los foros son un gran lugar para encontrar respuestas, pero es un lugar horrible para hacer preguntas (si eso tiene sentido). Los foros tienen estas reglas y pautas ridículas que quieren que sigas si haces preguntas ... básicamente esperan que seas el calibre de usuario que controla ese tablero de mensajes TODO el tiempo y está acostumbrado a sus restricciones de contenido y contenido. He tenido preguntas perfectamente normales directamente BORRADAS ... incluso desde Stack Exchange ... todo porque "no se formatearon correctamente".

La mala programación es el resultado de 1 de 2 cosas: o no entiendes los conceptos o no conoces la sintaxis. No estoy convencido de que nadie pueda aprender estos dos principios. La programación no es un talento natural con el que tienes que nacer. Es una práctica aprendida. Ni siquiera estoy seguro de que realmente se necesita mucha inteligencia. Solo tienes que ser paciente y comprometido con el aprendizaje. Si la gente entiende POR QUÉ una determinada práctica de programación es un problema, creo que tomarán las medidas necesarias para corregirse. No necesitan una maldita junta de revisión de idiotas que los reprenden.

Lo que más aprendo es leer y estudiar por mi cuenta en lugar de pedir ayuda a otros. W3Schools es un gran lugar para aprender algunas cosas nuevas. Incluso si está desarrollando principalmente VB, ejecutar algunos tutoriales en JavaScript o PHP o Entity o MVC puede ayudarlo a comprender mejor los conceptos de programación orientados a objetos. En la mayoría de los casos, tus primeros conciertos de desarrollo solo te lanzarán a un código y lo hackearás hasta que lo consigas. Puede que sea lo suficientemente bueno, pero si no sabes los conceptos detrás de lo que estás haciendo, no puedes esperar que lo hagas de la manera "correcta".

En mi opinión, no puedes aprender a ser un desarrollador de primera categoría antes de desarrollarte. Como con cualquier cosa, la práctica hace que sea perfecto ... y los desarrolladores más experimentados parecen olvidarlo.

    
respondido por el Shonenknife 02.09.2013 - 15:14
0

Bueno, si eres nuevo con algunos meses de experiencia en desarrollo, no se espera mucho de ellos (realmente, en serio, ven algo de talento en ti, por eso estás ahí, no es tu culpa, así que deja de preocuparte).

Debes darte cuenta de que la tarea que se te asigna es lo que te hará avanzar. esperan que aprendas de él . Antes de cualquier tarea, haga un punto para investigarlo durante algún tiempo y luego diríjase al senior para algún tipo de dirección. Observe que se está moviendo en la dirección correcta, está utilizando el enfoque correcto. Tal vez algunos han gritado sobre el enfoque correcto y empiezas a preocuparte. Nos pasa a todos, todo forma parte de la curva de aprendizaje.

Así que solo relájate, relájate y trata de disfrutar de días sin responsabilidad, pero trabaja duro

    
respondido por el maz3tt 14.01.2011 - 08:18
0

Me he sentido así muchas veces y probablemente me sentiré así muchas veces más en el futuro. Concedido que tengo ansiedad y depresión que pueden hacer esto un poco más difícil, pero con algo de perseverancia, inteligencia y curiosidad puede ser interesante ver dónde terminará al final. La Guía de Guerrilla para Entrevistas no sería una mala idea de algo a considerar.

Otra pregunta es ¿cuánto disfrutas de la lucha y las soluciones que encuentras? Si no disfrutas resolviendo problemas, entonces te sugiero que te salgas de la programación. Al mismo tiempo, sé que en mis primeros meses en el trabajo hubo muchas veces en las que me sentí como un idiota y con una situación de "bautismo con fuego", pero creo que eso es normal. Sobreviví las luchas y sentí que estaba en la cima del mundo, que es un sentimiento increíble que a menudo trato de recuperar con un éxito moderado.

    
respondido por el JB King 24.01.2011 - 22:24

Lea otras preguntas en las etiquetas