¿Es el ingeniero 10X un mito?
La realidad es que algunas personas son mejores programando que otras.
En mi puesto anterior en una empresa de tecnología, me asombró cómo algunas personas de mi equipo parecen saber cómo hacerlo todo.
Incluso durante mi tiempo en la universidad, participando en hackatones y pasantías, pude conocer a algunos desarrolladores muy talentosos de los que aprendí mucho.
En este artículo, repasaré algunos conceptos erróneos que la gente puede tener sobre el ingeniero 10X. Después de ver qué es un ingeniero 10X no, Repasaremos algunos de los mejores consejos que puedo darte para que te conviertas en un ingeniero 10X.
¿Qué es un Ingeniero 10X?
Muchos desarrolladores discutirían sobre la definición real de un ingeniero 10X. Pero en aras de la claridad, intentemos definir una definición simple ahora.
Un ingeniero 10X es un desarrollador de software capaz de ser tan productivo como diez de sus compañeros.
La idea del ingeniero 10X podría haberse originado antes de lo que piensas.
A trabajo de investigación de 1968 llamado "Estudios exploratorios y experimentales que comparan el rendimiento de la programación en línea y fuera de línea" propuso por primera vez la idea de que algunos de los mejores programadores realizan un orden de magnitud mejor que los peores programadores. Si bien esta no es la definición acordada hoy, la idea del ingeniero 10X pronto se extendió fuera de la academia.
Unos años más tarde, el libro clásico El Mes del hombre mítico ilustró aún más la idea del ingeniero 10X. El autor Fred Brooks sugiere que Desarrollo de software ad-hoc los equipos podrían estructurarse como equipos quirúrgicos.
En este equipo, tendría un programador jefe o "cirujano" con programadores de apoyo o "enfermeras".
Si bien esta analogía es fácil de entender, creo que es un poco simplista y anticuada cuando se aplica al estado actual del desarrollo de software.
La dinámica de equipo en un equipo técnico es muy diferente a la de un cirujano. Esta idea de que una sola persona hace la mayor parte del trabajo o solo el trabajo más desafiante ha caracterizado erróneamente lo que creo que debería ser un ingeniero 10X.
Conceptos erróneos comunes
A medida que la idea del ingeniero 10X se extendió por toda la esfera tecnológica, la mayoría de los gerentes a menudo malinterpretan lo que queremos decir con "10X".
Un concepto erróneo común es que los ingenieros 10X producen diez veces más código que sus pares. Esto simplemente no es cierto.
Si bien un ingeniero 10X podría producir más código que sus colegas, la cantidad no es la métrica correcta. Imagine un programador que gasta mil líneas de código realizando lo que se podría hacer en menos de cien. Del mismo modo, ¡un ingeniero 10X no codifica diez veces más rápido!
Otro concepto erróneo sobre los ingenieros de 10X es que son geniales simplemente por su conocimiento de codificación. Nuevamente, este es otro caso de mirar la métrica incorrecta.
Lo que hace que un ingeniero 10X sea tan valioso es cómo agrega diez veces más valor a su equipo y organización. Un ingeniero 10X es indispensable debido a su capacidad para utilizar sus conocimientos de codificación y alinearlos con las necesidades de la empresa.
Los gerentes deben buscar ingenieros que puedan resolver problemas y trabajar bien con los demás. Más allá del conocimiento de codificación, los ingenieros de 10X deberían poder elevar el trabajo de todos los que los rodean.
Cinco maneras de ser un ingeniero 10x
Esta sección es para usted si es un gerente que busca su próxima contratación, o simplemente un ingeniero que aspira a ser un ingeniero 10X.
Estos son algunos de los hábitos y rasgos clave de un ingeniero 10X:
Saben cómo aprovechar al máximo su stack tecnológico
Conocer sus herramientas es quizás el consejo más obvio que puedo darle. Sin embargo, muchos desarrolladores aún pueden mejorar su flujo de trabajo aprendiendo a trabajar de manera eficiente.
La mayoría de los ingenieros de 10x con los que he trabajado conocen bien la terminal. Si bien puede ser una pequeña curva de aprendizaje para los principiantes, comprender cómo hacer comandos de shell sobre la marcha lo ayudará a hacer su trabajo mucho más rápido a largo plazo.
Los ingenieros 10x también pueden beneficiarse de ser un poco vagos. Déjame decirte lo que quiero decir.
Imagine tener que ejecutar manualmente una serie de comandos todos los días para enviar nuevos compromisos a producción. Un ingeniero 10x debe evitar realizar tareas repetitivas. Hacen un esfuerzo adicional para automatizar la mayor parte del día posible.
Los mejores ingenieros también deberían pensar a largo plazo. Si está trabajando para una startup, puede ser tentador centrarse en soluciones rápidas y fáciles. Sin embargo, es posible que estas soluciones no se amplíen en el futuro.
Nunca dejan de aprender
Un gran desarrollador nunca deja de aprender. Los mejores ingenieros encuentran tiempo fuera de su ajetreado día laboral para probar nuevos conceptos, lenguajes y marcos que pueden tratar de aplicar a su trabajo.
Un ingeniero 10x debe mantener un sano sentido de la curiosidad. A menudo se preguntan: "¿Se puede hacer esto mejor?" o “¿Existe una forma más simple o más eficiente de resolver este problema?”.
Por lo tanto, un ingeniero 10x debe dominar el arte de aprender en sí mismo. Aprender a aprender es la mejor manera de mantenerse a flote en un entorno acelerado.
Saben cómo pasar mejor su tiempo.
Un gran ingeniero de software es excelente para tomar decisiones, particularmente sobre qué hacer con su tiempo.
Los ingenieros 10X rara vez necesitan trabajar más horas que el ingeniero promedio. Los ingenieros deben saber cuándo retroceder y decir no a ciertas solicitudes. Deben saber qué tareas hacer ellos mismos y qué tareas delegar.
Los ingenieros efectivos deben dominar cómo discernir si vale la pena hacer una tarea rápidamente. Un modelo mental a tener en cuenta es el principio de Pareto.
El principio establece que el 80% del valor de tu trabajo proviene del 20% de tu esfuerzo. En otras palabras, no todas las tareas son iguales.
Buscan una tutoría adecuada.
Un gran ingeniero puede aprender mucho de un veterano experimentado de la industria. Los ingenieros de 10X a menudo se encuentran buscando mentores dentro y fuera del trabajo para ampliar sus conocimientos.
Del mismo modo, los ingenieros de 10X se beneficiarán al asumir el papel de mentores de sus propios compañeros de equipo. Todo el equipo se anima al estar abierto a sus compañeros de equipo más novatos.
entienden el negocio
En palabras simples, la ingeniería de software es solo una forma en que las computadoras resuelven un problema del mundo real. Con eso en mente, un ingeniero efectivo debe convertirse en un experto en el problema que está tratando de resolver.
Como ingeniero, es una buena idea hacer un esfuerzo para comprender el negocio o la industria de la que forma parte. Un ingeniero 10x debe ser un participante activo en las reuniones con otros departamentos.
Si el ingeniero se esfuerza por comprender lo que hacen otros departamentos en el contexto del negocio, se convertirá en un comunicador eficaz. La comunicación efectiva ayudará a evitar que su equipo malinterprete los requisitos comerciales y las especificaciones del proyecto.
Conclusión
Esperemos que ahora tenga una idea más clara de cómo se ve un ingeniero 10X. También debe comprender lo que no es un ingeniero 10X.
El consejo anterior es, por supuesto, solo una guía general que se puede aplicar a cualquier rol de ingeniería de software. Si quieres descubrir cómo puedes ser el mejor Ingeniero DevOps, desarrollador completo o científico de datos, su mejor opción es encontrar oportunidades para aprender y construir.
Piense si su posición actual es un buen ambiente de aprendizaje. Tal vez desee dedicar más tiempo a trabajar en proyectos paralelos que le permitirán explorar tecnologías fuera de su pila tecnológica actual. Estos son solo algunos de los consejos que puede seguir para obtener una ventaja en tecnología.
¿Cuál crees que es el consejo más útil para los aspirantes a ingenieros?
Deje un comentario