¿Cuánto puede mejorar un desarrollador promedio en un año?

Pasé de C # (de todos modos, no era tan bueno) a hacer todos los javascript en enero de este año. Fue mi jefe al darse cuenta de que ya tenía una buena cantidad de conocimiento y necesitaba a alguien, solo había otra persona que sabía angular.

Entonces comencé Udacity, con el curso senior de desarrollo web. El curso más duro que tienen, apuesto. Los maestros realmente no te ayudan a escribir código, solo ofrecen posibles marcos que podrías usar. Eso es más o menos, se espera que:

  • Utilice un marco MVVM, MVC
  • Minifica tu código

Todo lo demás está en el rubro para las especificaciones establecidas para cada uno de los 5 proyectos, que podrían hacerse en .net MVC si realmente quisieras, pero estaba aquí para aprender javascript.

La comunidad de udacity de otros estudiantes era del tipo que esperarías. “Reaccionar” “paquete web” “Sigo las guías de estilo AirBnB JSX y JavaScript y utilizo ESLint para proporcionar un estilo excepcional y una calidad de código”. Esto fue bastante desalentador, me encontré rodeado de los personajes figurativos de las publicaciones satíricas de Medium. Parecía que cada vez que me ponía flojo alguien usaba un nuevo something.js para construir el primer proyecto.

El primero es un planificador de eventos. Bastante sencillo, encontré ejemplos angulares para el registro en los cromos localStorage. Manejé todo por allí, básicamente copié el registro para almacenar un objeto de evento. Genial, listo. “Fallido: no incluyó su proyecto”

Fue en este punto que había estado haciendo angular en Visual Studio, ni siquiera pensaba en que todos los demás usaran un editor de texto. Campesinos. Muy bien, así que vuelvo a la holgura, ¿qué quieren decir con paquete? “Necesitas minimizar tu código”, dice un profesor. “¿Eh?” Así que eso fue todo. Fui autodidacta en C #, parece que seguiré siendo autodidacta en JavaScript, pensé. Así que googleé la minificación de JavaScript. Los días pasan Finalmente encontré a Yeoman, lo había oído antes, pero ahora lo estaba usando para generar una plantilla angular con gruñido, y todas las cosas de minificación. Bueno. “Aprobado: buen trabajo”

Dulce, ahora estoy progresando. El problema es que, después de solo 1 proyecto aprobado, también tenía un trabajo que quería que hiciera aplicaciones angulares. Así que esto involucró Skype SDK y Microsoft Graph API. Encuentro un amigo alemán en codepen que es realmente bueno en javascript. Ninja bien. Me ayuda a entender los prototipos. Comienzo a usar codewars y él me empuja a continuar haciendo esas pequeñas funciones de práctica, al menos una vez a la semana.

Pasan meses de esto. Todavía no he completado el segundo proyecto en Udacity. Siendo el único chico de javascript, estoy haciendo un montón de proyectos con bibliotecas de microsoft incorporadas en javascript, así que estoy abrumado con cosas que hacer. Soy el que más sabe en el trabajo para SkypeWeb sdk, que está construido para javascript. Tengo la tarea de usar Microsoft bot bot framework mucho. Las tareas para esos bots requieren algunas cosas pirateadas, que luego me obligaron a aprender cómo construir CRUD y REST api con node.js, que mi bot podría apuntar. Así que, básicamente, tengo 5 bots que mantener y ponerlos en producción en algún momento. Un millón de proyectos y solo 8 horas al día, estoy abrumado. El problema es que eventualmente necesito volver a estos cursos de udacity por completo, así que estoy trabajando los fines de semana solo para ponerme al día. En cualquier caso, sé JavaScript bastante bien ahora, diría.

Mi amigo está haciendo herramientas de izquierda a derecha en javascript, ahora sé bastante bien la sintaxis de es6, puedo distribuir funciones y flujo lógico sin copiar otros fragmentos.

En mi opinión, no es necesario un curso universitario, pero se requiere perseverancia y la necesidad de alcanzar un objetivo final. ¿Quizás gastar dinero te dará un incentivo? Funciona para mucha gente. Si no tuviera a mi amigo alemán, y mi jefe no me estuviera persiguiendo para terminar las cosas al final de la semana, en un idioma que no entendí al principio, no habría progresado mucho. Sin la holgura de udacity, no habría encontrado bibliotecas oscuras en javascript, que realmente lo ayudan a aprender los conocimientos básicos de programación. Recientemente aprendí cómo debería verse la sintaxis de promesas (devolución de llamada), cómo debería funcionar, usando dexie.js. El creador es muy servicial y amigable. Me encanta la comunidad de código abierto por este motivo.

En resumen, diría que definitivamente puede mejorar enormemente como desarrollador en un año. Sitios como codewars es bueno, esos rompecabezas son abrumadores y difíciles al principio. Realmente ayudan más adelante cuando te encuentras con tu propio rompecabezas en una aplicación web. Por lo general, se trata de manipular datos o algo por el estilo. El año que viene planeo usar angular 2 exclusivamente. Por lo que aprendí aquí, es similar en otros idiomas, y revisando C # entiendo mucho más.

Solía ​​trabajar para una empresa, donde hacía las mismas cosas durante los últimos 3 años. No he aprendido literalmente nada durante este tiempo. El tiempo que resolví un problema fue mucho más importante que cómo lo hice. La calidad del código simplemente no importaba. Estaba aprendiendo cosas nuevas en mi tiempo libre, eso es todo.

Luego un cambio repentino. Me mudé a otra compañía. Los compañeros de trabajo, mi jefe, estaban mucho más concentrados en la calidad del código. Tenía que aprender nuevos y mejores marcos, me daban tiempo para hacer las cosas de la manera correcta . En unos meses he aprendido más que en esos 3 años en la antigua empresa.

Entonces, bueno, la respuesta es: depende. Principalmente en ti.

Depende del tiempo que un desarrollador separe del aprendizaje … practique la implementación en un escenario real …

El único límite para esto es tu motivación. He visto estudiantes que nunca tocaron código antes, y escribieron sus propios motores de Ray Tracing dentro de los 4 meses de estudiar.

More Interesting

¿Cuáles son algunas técnicas "rápidas y sucias" que los principales programadores usan con frecuencia sabiendo que no deberían?

¿Qué buscan las empresas tecnológicas en un currículum de nivel de entrada para un desarrollador de software? ¿Debería ser educación o experiencia pesada, con información específica del curso o proyectos incluidos? ¿Debería haber una carta de presentación? ¿Es cierto cierto formato mejor que otro?

¿Cómo manejan los desarrolladores de software el tiempo de aceleración lento en un equipo ágil?

Como desarrollador junior de software, ¿cómo debo elegir entre convertirme en generalista o especialista en mi carrera?

Cómo aprender rápidamente nuevas herramientas como desarrollador de software, y cómo elegir qué herramientas vale la pena aprender

¿Qué extrañé al no estudiar CS o CE como desarrollador de software? Estudié química y física, aprendí programación en el trabajo (C ++, Phython, un poco C #). Soy bueno en el procesamiento de imágenes y estoy trabajando a tiempo completo con sistemas HMI. ¿Qué me perdí?

¿Los desarrolladores web fallaron los desarrolladores de software?

¿Cuál es su consejo para nivelar trabajo / estudio / proyectos / amor y lograr sus objetivos?

¿La reutilización en el desarrollo de software es una broma?

Cómo encontrar un trabajo de desarrollador de software sin pasar por una entrevista técnica basada en algoritmos locos

Si la oferta de desarrolladores de software eventualmente excede la demanda, ¿qué sucederá?

Actualmente estoy trabajando como desarrollador de software y quiero cambiar a pruebas, he comenzado a aprender automatización. ¿Es correcto?

¿Deberían las casas de desarrollo de software publicar sus precios abiertamente?

Cómo tener éxito como desarrollador de software independiente

¿Cómo puede un desarrollador de software en India con más de 2 años de experiencia y buenas estructuras de datos y habilidades de algoritmos, conseguir un trabajo en los Estados Unidos?