Al comienzo de la carrera como desarrollador, a menudo da miedo: enfrentas problemas desconocidos, hay mucho que aprender y tienes que tomar decisiones difíciles. Y en algunos casos, cometemos errores en esas decisiones. Esto es completamente natural, y no vale la pena culparse por ello. Lo que sí vale la pena hacer es recordar tu experiencia para el futuro. Soy un desarrollador senior que en su momento cometió una gran cantidad de errores. A continuación, compartiré los ocho más serios que cometí cuando aún era novato en el desarrollo y explicaré cómo podrían haberse evitado.

Acepté la primera oferta que recibí
Cuando aprendes a escribir código por tu cuenta o terminas tus estudios universitarios, conseguir el primer trabajo en tu campo se convierte en uno de los principales objetivos. Algo así como la luz al final de un largo túnel.
Sin embargo, conseguir trabajo no es fácil. Cada vez hay más personas que compiten por las vacantes de junior. Por lo tanto, es necesario , pasar por una serie de entrevistas, y a menudo todo este proceso se alarga considerablemente. Teniendo en cuenta todo esto, no es sorprendente que cualquier oferta de trabajo despierte el deseo de agarrarla con ambas manos.
Y aun así, esto puede resultar ser una mala idea. Mi primer trabajo estaba lejos de ser ideal, tanto en términos de crecimiento profesional como en cuanto al placer del proceso. Los desarrolladores se guiaban por el lema "más o menos está bien", y no se acostumbraba a esforzarse demasiado. Todos intentaban echar la culpa a otros, y a menudo tenía que cortar esquinas para cumplir con plazos muy ajustados. Pero lo peor de todo es que no aprendí absolutamente nada.
En las entrevistas pasaba por alto todas las señales de advertencia, ya que me cautivaba la perspectiva de conseguir un trabajo. Si surgían dudas, todas se evaporaban de mi mente tan pronto como escuchaba que me contrataban. ¡Y además, con un buen salario!
Y ese fue un gran error.
El primer trabajo es de gran importancia. Proporciona una visión general de lo que es ser un verdadero programador, y la experiencia y el aprendizaje que obtendrás de él pueden sentar las bases para toda tu futura carrera. Por eso es crucial investigar bien sobre el puesto y el empleador antes de aceptar. No necesitas una experiencia dura ni malos mentores.
- Busca información sobre la empresa. Visita sitios de reseñas, revisa el sitio web oficial, simplemente navega por Internet y recopila opiniones. Así entenderás mejor si la empresa se alinea con tus necesidades y objetivos.
- Pregúntale a conocidos. Si alguien de tu círculo ha trabajado con este empleador o conoce a alguien de su personal, habla con ellos en persona. Averigua qué les gustó, qué no les gustó y cómo evaluaron su experiencia en general.
No hice las preguntas adecuadas en las entrevistas.
La entrevista es la mejor oportunidad para conocer mejor la empresa, así que prepara preguntas sobre lo que deseas saber de los empleados. Aquí hay un par de ejemplos:
- Pregunta sobre el proceso de desarrollo (¿qué metodologías siguen? ¿hay inspección de código? ¿qué estrategias de ramificación se aplican?)
- Pregunta sobre las pruebas (¿qué pruebas se realizan? ¿hay personas específicas que se dedican solo a las pruebas?)
- Pregunta sobre la cultura corporativa (¿qué tan informal es todo? ¿hay algún tipo de apoyo para los juniors?)
No me decidí sobre mi trayectoria.
Sin duda, el camino para convertirte en un desarrollador experimentado es bastante sinuoso. Ahora hay muchas opciones entre lenguajes, frameworks y herramientas. Mi error al principio de mi carrera fue intentar aprender todo. Irónicamente, eso solo llevó a que no avanzara en nada en particular. Primero me enfoqué en Java, luego en jQuery, después pasé a C#, luego a C++... En lugar de elegir un lenguaje y dedicarle todos mis esfuerzos, iba saltando de uno a otro según mi estado de ánimo. Puedo asegurarte que este es un esquema de aprendizaje extremadamente ineficiente.
Hubiera logrado mejores resultados y avanzaría más rápido en mi carrera si hubiera definido de inmediato mi trayectoria, es decir, un conjunto específico de tecnologías, y me hubiera concentrado en ellas. Por ejemplo, si eres un desarrollador frontend, domina JavaScript, CSS/HTML y algún framework de tu elección. Si te dedicas al backend, nuevamente, elige un lenguaje y estudia a fondo.
Así que enfócate, define una dirección y elabora un plan que te permita convertirte en un profesional en el camino elegido (aquí está , que puede ayudarte).
Me complicaba con el código
Entonces, estás preparando una prueba para mostrar tus habilidades al empleador, o ya has comenzado tu primera tarea en tu primer trabajo. Te esfuerzas al máximo para impresionar. ¿Cómo puedes lograr el resultado de manera más efectiva? Probablemente, demostrando la técnica avanzada que recientemente has aprendido, ¿verdad?
No. Este es un error grave que yo mismo cometí, y más veces de las que me gustaría, he visto en el trabajo de otros juniors. Es muy característico querer inventar la rueda o buscar soluciones complejas en un intento de impresionar con los conocimientos.
El mejor enfoque para escribir código se expresa . Al buscar la simplicidad, obtendrás un código claro que será fácil de manejar en el futuro (el desarrollador que te suceda lo apreciará).
Olvidaba que hay vida fuera del código
Nunca 'desconectarse' es un mal hábito que adquirí muy pronto. Al irme a casa al final del día, a menudo llevaba conmigo mi portátil de trabajo y pasaba horas en él para cerrar una tarea o solucionar un bug, aunque ambas cosas podrían haber esperado hasta la mañana. Como era de esperar, este modo de vida causaba estrés y rápidamente me agoté.
La razón de este comportamiento era, en parte, mi deseo de hacer todo lo más rápido posible. Sin embargo, en realidad, debería haber entendido que el trabajo es un proceso a largo plazo y que, con raras excepciones, las cosas que no se completan hoy pueden ser dejadas para mañana. Es muy importante desconectarse de vez en cuando y recordar que la vida no se agota en el trabajo: hay amigos, familia, pasatiempos y entretenimiento. Por supuesto, si te gusta quedarte hasta el amanecer programando, ¡adelante! Pero cuando eso ya no es placentero, detente y pregúntate si deberías ocuparte de otra cosa. ¡No estamos trabajando como si fuera el último día!
Evitaba decir: «No sé»
Es común quedar atrapado en el proceso de resolver algún problema o realizar una tarea, esto le sucede incluso a los más experimentados. Cuando era junior, decía «No sé» con menos frecuencia de la que debería, y eso estaba mal. Si alguien de la dirección me hacía una pregunta y no sabía la respuesta, intentaba crear confusión en lugar de simplemente admitirlo.
Me parecía que si decía: «No sé», la gente podría pensar que no entendía nada de lo que hacía. En realidad, esto no es cierto; no hay personas que lo sepan todo. Por eso, si te preguntan algo que no sabes, simplemente dilo. Esta actitud tiene varias ventajas:
- Es honesto: no confundes a quien pregunta.
- Hay una oportunidad de que te expliquen y así aprendas algo nuevo.
- Es respetable: no cualquiera puede admitir que no sabe algo.
Me apresuraba a avanzar.
Probablemente has escuchado el dicho: «Antes de correr, aprende a caminar». Este es un consejo que resulta muy relevante en el ámbito de la programación web. Cuando comienzas a trabajar como junior en un lugar, tienes la tentación de tomar el toro por los cuernos y embarcarte de inmediato en un proyecto grande y complejo. A veces, incluso se te pasa por la mente cómo ganar rápidamente una promoción al siguiente nivel.
Las ambiciones son, por supuesto, algo bueno, pero en la práctica, al principio nadie te dará nada parecido. Al inicio de tu carrera, es probable que te confíen tareas sencillas y corrección de errores. No es la actividad más emocionante del mundo, pero no hay a dónde escapar. Esto te permitirá familiarizarte paso a paso con la base de código y aprender todos los procesos. A su vez, tu superior tendrá la oportunidad de ver cómo encajas en el equipo y en qué eres mejor.
Mi error fue que me frustraba con estas pequeñas tareas y eso me distraía del trabajo. Ten paciencia, haz todo lo que te pidan con responsabilidad, y pronto te tocará algo más interesante.
No me involucraba en la comunidad ni establecía conexiones.
Los desarrolladores tienen una comunidad increíble: siempre están listos para ayudar, dar retroalimentación e incluso animar. Programar es una tarea compleja y a veces resulta agotadora. Para mí, el período como junior habría sido más sencillo si desde el principio hubiera comenzado a relacionarme activamente con mis colegas.
Los contactos con la comunidad son, además, muy útiles para la autodidáctica. Puedes contribuir a proyectos de código abierto, estudiar el código de otros, observar cómo los programadores llevan a cabo proyectos en conjunto. Todas estas son habilidades que podrás utilizar en tu trabajo principal y que con el tiempo te convertirán en un buen especialista.
Elige comunidades que te interesen; entre las opciones puedo mencionar freeCodeCamp, CodeNewbies, 100DaysOfCode. ¡Sumérgete! También puedes asistir a meetups locales en tu ciudad (búscalos en meetup.com).
Finalmente, de esta manera podrás construir una red profesional. Básicamente, las conexiones son solo personas de tu industria con las que interactúas. ¿Por qué es importante? Bueno, digamos que en algún momento quieras cambiar de trabajo. Si te diriges a tus contactos, alguien podría recomendarte una vacante adecuada o incluso hablar bien de ti al empleador. Esto te dará una ventaja significativa en la entrevista: ya han hablado de ti, ya no serás 'otro currículum más en la pila'.
Eso es todo, ¡gracias por tu atención!
Fuente: habr.com
