El mundo de la programación es competitivo, ya que está en constante crecimiento. Tener solo…

Cómo convertirse en un mejor desarrollador
Transcripción del video
John Sonmez: ¿Qué pasa chicos? John Sonmez aquí de simpleprogrammer.com. En este video, vamos a hablar sobre cómo convertirse en un mejor desarrollador, cómo convertirse en el mejor desarrollador posible.
Si me están siguiendo o mirándome por primera vez, soy John de simpleprogrammer.com. En este canal, te enseño habilidades sociales para desarrolladores de software. Digo nosotros porque hay más que solo yo en el canal, pero te enseñamos habilidades blandas, te enseñamos cosas como cómo conseguir un mejor trabajo, cómo negociar tu aumento, cómo lidiar con tus compañeros de trabajo que son molestos y cómo ser simplemente un buen desarrollador de software, cómo ser un buen ser humano, cómo realizarse personalmente y desarrollarse como desarrollador de software.
Pero antes de pasar al video, tengo un par de cosas rápidas. Uno, haz clic en el botón de suscripción porque no hay ninguna razón por la que no harías eso, ¿verdad? Haga clic en la campana para recibir notificaciones, porque desea recibir los videos cuando salgan por primera vez. Quiero decir, ahí es cuando están calientes.
Muy bien, lo segundo es este libro, la Guía completa de carrera para desarrolladores de software. Ve a verlo. Ve a comprar este libro. Es un gran tomo. Escribí esto para desarrolladores de software. He estado pensando en esto, he sido como ¿cuál debería ser la única cosa de la que hablo en este canal todo el tiempo? Y realmente debería ser este libro, porque es lo más útil que probablemente he creado. Tengo algunos cursos y otras cosas en simpleprogrammer.com, pero esto es todo lo que sé sobre desarrollo de software, sobre la carrera de desarrollo de software. También hay una versión de audio, la recomiendo encarecidamente. En realidad, la versión de audio que tengo, un montón de contenido extra extra que le agregué justo cuando salí del guión. Entonces es largo, es largo, pero vale la pena.
Muy bien, veamos si podemos entrar en esto. Muy bien, tengo una pregunta aquí. Dice: “Hola John, recientemente recibí mi revisión después de trabajar un año como desarrollador de Java. A veces me resulta difícil hacerle una pregunta a un desarrollador senior, principalmente porque los consejos que recibo normalmente no responden a mi pregunta, ni me ayudan de ninguna manera, lo que me hace sentir que estoy prácticamente solo «. Oh Dios mío. “Me dieron un aumento, pero también me dijeron que soy uno de los desarrolladores más débiles de mi departamento. ¿Qué puedo hacer para asegurarme de convertirme en un mejor desarrollador? Información adicional, este es mi primer trabajo como desarrollador desde que cambié de carrera «.
Todo bien. ¿Estás en la India por casualidad, donde te intimidan el culo aquí? Porque es un poco extraño, darle un aumento a alguien y luego decir que eres uno de los desarrolladores más débiles. No muy guay. De todos modos, no estoy seguro de que quieras trabajar para esa empresa cuando te lo digan, pero tal vez sea cierto. Supongamos que es cierto y que simplemente están siendo francos contigo y eres un desarrollador más débil. ¿Cómo puedes convertirte en un mejor desarrollador? De acuerdo, solo has sido desarrollador de Java durante un año, pero probablemente les daré cinco consejos, así que cuéntenlos. Empecemos por el primero.
El primero es leer blogs, leer contenido, ¿verdad? Todas las mañanas, cuando llegue al trabajo, en lugar de jugar en Internet, lea algunos blogs de programación que sean específicamente de su industria, ¿de acuerdo? Una de las cosas que me ayudó tanto a aumentar mis habilidades como desarrollador de software fue involucrarme en la comunidad de desarrollo, ¿verdad? Leí tantos blogs y estaba actualizado, y aprendería tantas cosas de estos blogs, porque eran desarrolladores reales que estaban trabajando, que estaban resolviendo problemas. Y se necesita un tiempo para escribir un libro, por lo que esta información aún no estaba en un libro. Así que ten una lista de lectura de bloques que te mantendrán actualizado sobre información y tecnología. Siempre es genial cuando puedes asistir a una reunión y sabes todas las cosas nuevas que están sucediendo en el mundo de Java, y te verás como un experto porque serás un experto. Porque si te mantienes al día con esta información, realmente mejorará tu conjunto de habilidades, ¿de acuerdo?
Pero ahí no es donde termina, ¿de acuerdo? La segunda cosa que está bastante relacionada es que deberías leer un libro al mes, ¿de acuerdo? Tengo un montón de recomendaciones de libros que puedes encontrar en este canal o en simpleprogrammer.com. Código limpio de Bob Martin, código completo de McConnell, programador pragmático. Hay tantos libros. Mes del hombre mítico. ¿Correcto? Ve y mira todos los libros clásicos de desarrollo de software y asegúrate de haberlos leído. Refactorización de Martin Fowler, aunque no me gusta Martin Fowler. Es una especie de idiota para mí en Twitter. Pero bueno, lee su libro de todos modos. Sigue siendo un buen libro. De todos modos, hay tantos libros diferentes que puedes leer. El material de Kent Beck sobre pruebas unitarias, también material realmente bueno. Sí, muchas cosas. Lee esas cosas. Gang of Four, el libro de patrones de diseño. Conozca todas esas cosas y se convertirá en un desarrollador realmente bueno al conocer toda esa información. ¿Okey? Ese es el número dos. Esas son personas relacionadas, leyendo blogs, leyendo libros, pero necesitas estar al día con la información. Eso es lo que es realmente clave.
El tercero es este. Siempre debes tener algún tipo de proyecto paralelo. Ahora, hay varias razones para esto. No voy a entrar en cuánto dinero puedes ganar y cómo puedes construir negocios y todo eso, aunque es muy, muy cierto. Pero comience un proyecto paralelo y manténgalo siempre en marcha. Así que digamos que eres un desarrollador de Java, y lo eres. Si está trabajando en su proyecto paralelo, puede trabajar en nuevas tecnologías en Java, puede desarrollar sus habilidades, puede trabajar en hacer algunas pruebas unitarias. Puede acelerar su conjunto de habilidades mucho más trabajando en un proyecto paralelo de lo que podría hacerlo con su trabajo habitual. Además, será más divertido, será más interesante. Puedes pasar más tiempo aprendiendo y experimentando, mientras que en tu trabajo habitual, solo tienes que arreglar el maldito error. Solo tienes que resolver el problema. No puedes holgazanear tanto y divertirte con eso. Y por lo general, cuando te diviertes, es cuando estás aprendiendo. Entonces ese es otro.
Déjame ver, ¿cuál era el otro del que iba a hablar? Oh, este es grande. Este es probablemente el más importante, que es ir y ayudar a otras personas con sus problemas. Sé que solo eres un desarrollador de Java de primer año, pero no importa. Aquí está la cosa, ¿de acuerdo? En el transcurso de su carrera como desarrollador de software, solo encontrará tantos problemas. Tantas cosas en las que estás trabajando, ¿de acuerdo? Ahora bien, si realmente quieres multiplicar tu experiencia rápidamente, lo que necesitas son más problemas. Así que una cosa realmente buena que hacer, y lo hice como desarrollador de software junior, es que fui a otros desarrolladores y les dije: “Oye, ¿en qué estás trabajando? ¿Puedo ayudarte con eso? » O traté de entender su problema y ayudarlos con sus problemas, ¿verdad?
Obtuve mucha experiencia en tan poco tiempo. Resolví muy rápido los problemas de otras personas y me expuse a muchos problemas diferentes en un período de tiempo muy corto. Como desarrollador junior, como alguien sin mucha experiencia, desea adquirir tanta experiencia como sea posible rápidamente, ¿verdad? Así que esas dos cosas van juntas, ¿verdad? Si crea un proyecto paralelo y está aprendiendo muchas otras cosas por su cuenta porque está escribiendo más código y luego está ayudando a otras personas con sus problemas, su experiencia se acelerará extremadamente, extremadamente rápido.
Junto con eso, el último, este será el último, es este. Practica la codificación competitiva. Solía, en el pasado, rodar en un sitio llamado Topcoder. Creo que todavía están por aquí. Pero hice estos concursos de programación, ¿de acuerdo? Y fue increíble, ¿de acuerdo? Porque en primer lugar, cuando comencé a hacerlo, no tenía idea de cómo resolver ninguno de los problemas. Yo estaba como, «Wow, en realidad soy un desarrollador de mierda». Pensé que era realmente bueno, pero resultó que en realidad era un desarrollador bastante de mierda. Pero una vez que comencé a hacer estas cosas y aprendí cómo hacerlas, y luego busqué las soluciones de otras personas al problema, el mismo problema que estaba tratando de resolver y cómo lo hicieron. Además, estaba haciendo C ++. Aprendí sobre vectores, y todas estas … listas y cómo usarlas, y cómo iterar a través de listas, y cómo hacer algoritmos de clasificación, y aprendí sobre las bibliotecas STL porque las necesitaba para hacer las cosas.
Te lleva al siguiente nivel, ¿verdad? Porque tienes que estirar tus habilidades. Y cuando solo estás escribiendo código y no estás compitiendo con nadie más, podrías pensar que lo estás haciendo realmente bien, ¿verdad? Hasta que te des cuenta de que en realidad no eres tan bueno cuando te comparas con otras personas, y eso te llevará al siguiente nivel. Eso es realmente clave. Realmente me ayudó. Mi punto es que necesitas algún elemento de competencia. Y hay otros sitios hoy en día además de Topcoder donde puedes practicar haciendo problemas de programación, pero cuanto más lo hagas y te metas, más se expandirán tus habilidades.
De todos modos, probablemente podría darte 15 cosas más que podrías hacer. Les voy a contar una última. Si aún no lo ha hecho, compre mi curso, Cómo promocionarse como desarrollador de software. Tendré un enlace aquí abajo, pero cómo promocionarte es realmente importante, porque si quieres convertirte en un mejor desarrollador, necesitas construir tu nombre y construir tu reputación y tu marca, ¿de acuerdo? Todo el mundo tiene una marca personal y es necesario desarrollar esa marca. Lo que te he dado hasta ahora es cómo mejorar tus habilidades técnicas, pero también necesitas trabajar en tu imagen, tu marca.
Y así, cómo promocionarse como desarrollador de software, como dije, simplemente retírelo y comience a seguir ese curso, y aprenda cómo crear una imagen, cómo crear una marca, cómo crear un blog, tal vez un YouTube. canal si lo desea. Quiero decir, imagina que si tienes un canal de YouTube, serás un desarrollador algo famoso en tu empresa. Vas a ganar mucho más dinero, vas a poder conseguir trabajos lucrativos. Tendrás muchas oportunidades que ni siquiera puedes imaginar, y a medida que creces y creces esa reputación, podrías construir un negocio. Así es como me convertí en multimillonario a través de la construcción de esa marca y esa reputación. Es por eso que estás viendo este canal de YouTube.
De hecho, este canal de YouTube es en realidad uno nuevo que creé a partir de mi antiguo canal de YouTube, que es Bulldog Mindset, que solía ser Simple Programmer. Eso tiene 250 mil suscriptores ahora, y he podido construir un gran negocio a partir de eso. He podido construir Simple Programmer a partir de esto. Pero definitivamente échale un vistazo si aún no lo has hecho, y buena suerte. Buena suerte, es tu primer año. Estarás bien. Solo sigue aprendiendo y sigue mejorándote, y sí. Bienvenido al juego del desarrollo de software. Muy bien, hablaré con ustedes la semana que viene. Háganme saber lo que piensan sobre su situación, y también los consejos que tengan para él.