Al comienzo de la carrera de un desarrollador, a menudo da miedo: enfrenta problemas desconocidos, tiene que aprender mucho y tomar decisiones difíciles. Y en algunos casos, estamos equivocados en estas decisiones. Esto es bastante natural, y no debes morderte al respecto. Pero lo que vale la pena hacer es recordar su experiencia para el futuro. Soy un desarrollador senior que cometió muchos errores al mismo tiempo. A continuación hablaré sobre los ocho más serios que cometí cuando aún era un principiante en el desarrollo, y explicaré cómo podrían evitarse.
Tomó lo primero que se le ofreció
Cuando aprendes a escribir código por tu cuenta o terminas tus estudios en la universidad, conseguir tu primer trabajo en una especialidad se convierte en uno de los objetivos principales. Algo así como la luz al final de un largo túnel.
Y, mientras tanto, encontrar trabajo no es fácil. Cada vez hay más personas que solicitan vacantes juveniles. Uno tiene que
componer un currículum impresionante , pasar por una serie de entrevistas y, a menudo, todo este proceso se retrasa considerablemente. Dado todo esto, no es sorprendente que cualquier oferta de trabajo provoque un deseo de aferrarse a ella con ambas manos.
Y sin embargo, esto puede resultar una mala idea. Mi primer trabajo estuvo lejos de ser ideal, tanto en términos de crecimiento profesional como en términos del placer del proceso. Los desarrolladores se guiaron por el lema "y así será", y no era costumbre tensarse particularmente. Todos intentaron culparse entre sí, y a menudo tuve que cortar esquinas para cumplir con plazos muy ajustados. Pero la peor parte es que no he aprendido nada en absoluto.
En las entrevistas, me perdí todas las llamadas que pasaba por mis oídos, por lo que me fascinó la posibilidad de conseguir un trabajo. Si surgieron dudas, ¡todos salieron volando de mi cabeza tan pronto como escuché que me llevaban! Sí, por un buen salario!
Y eso fue un gran error.
El primer trabajo es de gran importancia. Da una idea general de cómo se siente ser un programador real, y la experiencia y la capacitación que obtienes de él pueden sentar las bases para toda tu futura carrera. Es por eso que es necesario averiguar adecuadamente todo sobre la vacante y el empleador antes de aceptar. Experiencia dura, malos mentores: definitivamente no necesitas esto.
- Busque información de la empresa. Vaya a los sitios con comentarios, mire el sitio oficial, simplemente navegue por Internet y recopile comentarios. De esta manera, comprenderá mejor si la empresa cumple con sus necesidades y objetivos.
- Pregúntale a tus amigos. Si alguien en su círculo ha trabajado para este empleador o conoce a alguien en el estado, hable con él en persona. Descubra lo que les gustó, lo que no les gustó y cómo generalmente valoran la experiencia.
No hice las preguntas correctas en las entrevistas.
Las entrevistas son la mejor oportunidad para conocer más de cerca a la empresa, así que asegúrese de recibir preguntas sobre lo que desea saber de los empleados. Aquí hay un par de ejemplos:
- Pregunte sobre el proceso de desarrollo (¿qué metodologías siguen? ¿Hay inspección de código? ¿Qué estrategias de ramificación se aplican?)
- Pregunte sobre las pruebas (¿qué pruebas se llevan a cabo? ¿Hay personas especiales que solo se dedican a las pruebas?)
- Pregunte sobre la cultura corporativa (¿qué tan informal es todo? ¿Hay algún apoyo para los jóvenes?)
Indeciso sobre la trayectoria del movimiento
Sin lugar a dudas, el camino para convertirse en un desarrollador experimentado es muy tortuoso. Ahora es posible elegir entre muchos idiomas, marcos y herramientas. Mi error al comienzo de mi carrera fue que intenté dominar todo. Irónicamente, esto solo llevó al hecho de que realmente no avancé en nada. Primero agarré Java, luego JQuery, luego pasé a C #, de él a C ++ ... En lugar de elegir un idioma y arrojar todas mis fuerzas, salté del quinto al décimo, solo por el estado de ánimo. Les puedo asegurar que este es un esquema de entrenamiento extremadamente ineficiente.
Habría logrado mejores resultados y habría ascendido en la carrera profesional si hubiera decidido inmediatamente sobre la trayectoria, es decir, un cierto conjunto de tecnologías, y me hubiera centrado en ellas. Por ejemplo, si usted es un desarrollador front-end, aprenda JavaScript, CSS / HTML y algún tipo de marco de su elección. Si está haciendo un back-end, nuevamente, tome un idioma y estudíelo adecuadamente. No tiene que tener Python, Java o C #.
Así que concéntrese, decida la dirección y haga un plan que le permita convertirse en un profesional en el camino elegido (aquí hay una
hoja de ruta que puede ayudarlo con esto).
Sofisticado en código
Entonces, está preparando una prueba para mostrarle a su empleador sus habilidades, o ya ha asumido la primera tarea en su primer trabajo. Hace todo lo posible para causar una buena impresión. ¿Cuál es la mejor manera de lograr un resultado? Probablemente, para demostrar durante la ejecución de esa técnica engañada que dominaste recientemente, ¿verdad?
No Este es un grave error que yo mismo cometí, y con más frecuencia de lo que me gustaría ver en el trabajo de otros jóvenes. Es muy común para ellos reinventar la rueda o buscar soluciones complejas en un intento de mostrar conocimiento.
El mejor enfoque para escribir código se expresa
en el principio KISS . Luchando por la simplicidad, obtienes un código comprensible con el que será fácil trabajar en el futuro (el desarrollador que viene a reemplazarte lo apreciará).
Olvidando que hay vida fuera del código
Nunca "desconectar" es un mal hábito, que adquirí muy temprano. Cuando me iba a casa al final del día, regularmente llevaba una computadora portátil que funcionaba y pasaba horas detrás para cerrar la tarea o corregir el error, aunque ambos podían esperar perfectamente hasta la mañana. Como se esperaba, tal régimen causó estrés y rápidamente me quemé.
Parte de la razón de este comportamiento fue mi deseo de hacer todo lo más rápido posible. Pero, de hecho, debería haber entendido que el trabajo es un proceso a largo plazo y, con raras excepciones, las imperfecciones de hoy se trasladan con calma al mañana. Es muy importante cambiar periódicamente y recordar que la vida no se limita al trabajo: hay amigos, familiares, pasatiempos, entretenimiento. Por supuesto, si te gusta sentarte antes del amanecer sobre el código, ¡por el amor de Dios! Pero cuando esto ya no sea una alegría, deténgase y piense si es hora de hacer otra cosa. ¡No estamos trabajando el último día!
Evite decir: "No sé"
Atascarse en el proceso de resolver un problema o completar una tarea es común, incluso las personas mayores de mayor edad se enfrentan a esto. Cuando era joven, dije: "No sé" con menos frecuencia de lo que debería, y esto estaba mal. Si alguien de la gerencia me hizo una pregunta, pero no sabía la respuesta, intentaba dejar entrar la niebla, en lugar de admitirlo.
Me pareció que si dijera: "No sé", la gente tendrá la impresión de que no entiendo lo que estoy haciendo en absoluto. De hecho, esto no es del todo cierto, no hay omniscientes. Por lo tanto, si le preguntan sobre algo que no sabe, dígalo. Este enfoque tiene varias ventajas a la vez:
- Esto es honesto: no engañas al interrogador
- Existe la posibilidad de que te expliquen y luego aprenderás algo nuevo
- Esto se respeta: no todos pueden admitir que no sabe algo
Se apresuró a avanzar
Probablemente escuchaste el dicho: "Antes de correr, aprende a caminar". En ninguna parte es más relevante que en el campo de la programación web. Cuando llegas por primera vez a algún lugar como junior, solo quieres tomar el toro por los cuernos e inmediatamente comenzar un proyecto grande y complejo. ¡Incluso los pensamientos se deslizan sobre cómo ganar rápidamente un aumento al siguiente nivel!
La ambición es, por supuesto, buena, pero en realidad nadie le dará algo así a un joven desde la puerta. Al comienzo de su carrera, lo más probable es que obtenga tareas sin pretensiones y solucione errores. No es la actividad más emocionante del mundo, sino a dónde ir. Esto le permitirá acostumbrarse al código base paso a paso y aprender todos los procesos. Sin embargo, sus superiores tienen la oportunidad de ver cómo encaja en el equipo y qué hace mejor.
Mi error fue que estaba molesto por estas tareas menores y me distrajo del trabajo. Sea paciente, haga lo que le pida conciencia, y pronto se le ocurrirá algo más interesante.
No incluido en la comunidad y sin conexiones
Los desarrolladores tienen una gran comunidad: siempre están listos para ayudar, dar comentarios e incluso animar. La programación es algo complicado y, a veces, muy agotador. Para mí, el período de trabajo como junior habría sido más fácil si comencé a comunicarme activamente con mis colegas desde el principio.
La comunicación con la comunidad también es muy útil para la autoeducación. Puede hacer una contribución a proyectos de código abierto, estudiar el código de otra persona, observar cómo los programadores dirigen el proyecto juntos. Todas estas son habilidades que puede utilizar en su trabajo principal y que con el tiempo lo convertirán en un buen especialista.
Elija las comunidades que le interesan: puedo nombrar freeCodeCamp, CodeNewbies, 100DaysOfCode entre las opciones, ¡y participe! También puede visitar manifestaciones locales en su ciudad (busque meetup.com).
Finalmente, de esta manera puedes desarrollar conexiones profesionales. De hecho, las comunicaciones son simplemente aquellas personas en su industria con quienes se comunica. ¿Por qué se necesita esto? Bueno, digamos que algún día quieres cambiar de trabajo. Si recurre a sus contactos, alguien puede aconsejarle sobre una vacante adecuada, o incluso recomendarle a su empleador. Esto le dará una ventaja significativa en la entrevista: ya se ha dicho una palabra para usted, ya no es "otro currículum del montón".
Eso es todo, ¡gracias por mirar!