¿Qué habilidades hacen que algunos ingenieros de software sean más atractivos para los empleadores?

Gracias por el A2A.

Como he estado haciendo esto por un tiempo, además de estar en ambos lados de esa mesa muchas veces, aquí está mi opinión sobre lo que hace que sea una perspectiva atractiva:

  1. Una cuenta de GitHub con muchos proyectos originales. Algo que simplemente no creas de la noche a la mañana, pero lleva algo de tiempo. Muestra claramente no solo tu talento, sino también tu pasión. Los proyectos a los que ha contribuido también ayudan, pero los proyectos originales llevan todo el día.
  2. Un afán de aprender nuevos idiomas y tecnología. El desarrollo de software es una industria en rápido movimiento, y a veces puede ser realmente un desafío mantenerse al tanto de todo Y también tener una vida. Pero si ese entusiasmo está ahí, eso puede recorrer un largo camino. También debe reflejarse en su CV.
  3. Experiencia. Este es otro que simplemente no se desarrolla de la noche a la mañana. Experiencia en la resolución exitosa de problemas difíciles y la entrega de resultados.
  4. Capacidad para hacer frente a los problemas necesarios a la mano. Básicamente, la mayoría de los empleadores buscan a aquellos que pueden “comenzar a ejecutar”, pueden hacerse cargo de inmediato e irse. Si necesita una gran cantidad de agarre de la mano inicial, puede ser un no arranque. A menos que sea un nivel de entrada o una pasantía. Pero incluso aquí, tomarse de la mano no es exactamente atractivo.
  5. Un buen ajuste, un buen jugador de equipo, un buen líder. El primero es obligatorio, y los dos últimos son uno u otro. Felicitaciones si golpeas los tres.

Tenga en cuenta que no dije una sola palabra sobre ningún grado. Sin duda, si está comenzando hoy, eso puede ser importante para el nivel de entrada. Pero incluso si alguien nuevo viniera a mí directamente desde la escuela, me gustaría ver esa cuenta de GitHub. Me interesaría menos lo que él o ella hiciera en la escuela, ya que las escuelas rara vez capacitan a sus estudiantes teniendo en cuenta la demanda actual del mercado. Por lo general, van 5–10 años detrás del mercado. Además, la academia tiene un enfoque diferente del mundo real. Básicamente, en la academia, haces un proyecto solo para obtener una calificación y una palmada en la cabeza de tu profesor. En el mundo real, debe producir un producto que el negocio que le está pagando puede hacer un buen retorno de su inversión en usted. Comprende la diferencia.

Hay varias preguntas que los empleadores deben responder:

  1. ¿La persona afirma tener las habilidades que necesitamos para hacer este trabajo?
  2. ¿Podemos verificar razonablemente esas afirmaciones?
  3. ¿La persona trabaja duro y con cuidado?
  4. ¿Esta persona encajará en mi equipo actual?

La respuesta (1) se puede hacer simplemente mirando su currículum. ¿Afirman saber los idiomas correctos, las herramientas de desarrollo de escritura y tener el conocimiento correcto en el campo correcto?

La respuesta (2) es mucho más difícil: tenemos que analizar las calificaciones formales y su historial de empleo anterior para juzgar si realmente tienen esas habilidades al nivel que afirman, y probamos esas habilidades lo mejor que podemos en el proceso de la entrevista.

La respuesta (3) tiende a ser mucho más difícil, pero si podemos ver que estuvieron en trabajos anteriores durante mucho tiempo, entonces no fueron despedidos por ser flojos, y si su nivel de pago anterior es algo comparable a lo que nosotros ‘ vamos a pagar, entonces probablemente su anterior empleador los valoró tan bien como nosotros.

La respuesta (4) solo se puede descubrir el día de la entrevista … así que charlamos y socializamos … tal vez los llevemos a almorzar en un esfuerzo por relajarlos y dejarnos ver si nos llevamos bien con ellos.

Lo que las habilidades reales SON dependen del trabajo que les pedimos que hagan. Si necesitamos un desarrollador web front-end junior, entonces HTML, CSS y JavaScript pueden ser suficientes. Pero si estamos buscando un ingeniero principal en un proyecto de título de videojuego AAA, necesitaremos quizás tres o cuatro lenguajes de programación, con décadas de experiencia en cada uno de ellos, el sistema de desarrollo adecuado (por ejemplo, Visual Studio) , una lista exhaustiva de habilidades matemáticas (álgebra lineal, geometría 3D, trigonometría, etc.) más herramientas de gestión de proyectos (rastreadores de errores, gestión de contenido, etc.): habilidades gráficas, habilidades de gestión del hombre … la lista será muy LARGA y bastante específica para ese proyecto

Pero depende del título del trabajo y del subcampo para el que la empresa está contratando: no hay una lista mágica de cosas que necesita saber que se adapte a todos los trabajos.

Estoy en la cima de mi campo en software de gráficos por computadora, con 40 años de experiencia y una larga lista de habilidades, pero probablemente no pude conseguir un trabajo como programador junior en el campo del software de banca (por ejemplo).

Gracias por el A2A! Según mis observaciones, estas son:

  1. Buenas habilidades de programación. Honestamente, si eres un genio de la codificación, tus bajas habilidades sociales no serán tan importantes.
  2. Mentalidad de resolución de problemas
  3. Voluntad de mejorar constantemente tus habilidades y aprender cosas nuevas
  4. Habilidades blandas , que incluyen: trabajo en equipo, poder decir lo que piensan, poder comunicarse con personas no técnicas.
  5. Enfoque humano primero. Breve historia sobre este: Hace unos días, estaba recopilando requisitos para las ofertas de trabajo en Neoteric . Ya casi habíamos terminado, cuando nuestro CTO dijo:
    “Ah, y escribe que no debe ser un fanático de los algoritmos”.
    “¿Qué quieres decir?”, Le pregunté.
    Aparentemente, pretendía distinguir 2 tipos de programadores: aquellos que están obsesionados con el código, los algoritmos y la optimización, y aquellos que están enfocados en lo humano.
    La optimización del código es importante, seguro. Pero si desea ser un mejor desarrollador de software (y, por lo tanto, ser más atractivo para el empleador), debe centrarse en el usuario de sus productos.

Además de las habilidades básicas de ingeniería, hay varias habilidades que son importantes para permitirte alcanzar nuevas alturas.

He agregado una publicación a mi blog de Quora que detalla estas siete habilidades: Las 7 habilidades para el éxito de la ingeniería por Solomon Rosenbaum en The Engineering Mentor

Echa un vistazo y hazme saber lo que piensas.

La mejor de las suertes,

Sol Rosenbaum, PE, CEM, CPMP
Perfil de Linkedin
Mira mis artículos en LinkedIn. Están orientados a ingenieros más jóvenes, pero aplicables a todos.

Habilidades blandas

Si puede programar, Y hacer que la gerencia hable, y la tutoría, y la comunicación entre equipos, y el papeleo, y la interfaz comercial / técnica y los acuerdos de nivel de servicio, y los acuerdos de mantenimiento … y el …

Tienes la idea …

Los desarrolladores necesitan tener alguna combinación de habilidades técnicas y habilidades blandas .

Las habilidades técnicas incluyen cosas como la capacidad de:

  • Recoge rápidamente nuevos conceptos
  • Resolver problemas
  • Brindar soluciones a estos problemas de manera rápida, consistente y de calidad adecuada.

Las habilidades blandas incluyen cosas como la capacidad de:

  • Comunícate de manera efectiva con tus superiores
  • Influye en tus compañeros y subordinados
  • Ayuda a impulsar proyectos de varias personas hasta su finalización
  • Pensar críticamente sobre el negocio.

Idealmente, un buen desarrollador junior puede salirse con la suya siendo muy fuerte técnicamente mientras tiene habilidades blandas promedio. Los desarrolladores senior deben ser fuertes en ambos conjuntos de habilidades.

  1. Mentalidad de resolución de problemas. Usted está aquí para resolver problemas, no para quejarse de cómo todos no valoran sus habilidades locas.
  2. Mentalidad orientada al cliente. Usted está aquí para proporcionar valor a los clientes, no para promocionarse.
  3. Capacidad para trabajar realmente en equipo. Es físicamente imposible trabajar por sí solo 1 hombre año en un mes. Tienes que colaborar con personas reales por ahí.

More Interesting

¿Cómo sugiere la Free Software Foundation que compañías como Microsoft generen ganancias? ¿Cómo deberían ganarse la vida los ingenieros de software independientes?

¿Por qué algunos programadores están desempleados?

Como ingeniero de software, ¿qué tipos de código R y Python puedo poner en mi github para intentar la transición al campo profesional de la ciencia de datos?

¿Cómo debo prepararme para una entrevista telefónica de prácticas de Amazon SDE?

¿Cómo es el día típico de un ingeniero mecánico?

¿Cómo alguien que teme programar entrevistas se convierte en ingeniero de software?

Como ingeniero de software con más de 7 años de experiencia, ¿debo abandonar la programación y pasar al puesto de gerencia?

Cómo usar las matemáticas como ingeniero de software

Cómo ganar una invitación en Product Hunt

¿Cómo pueden los ingenieros de software convertirse en multimillonarios?

¿Qué tipo de PC y computadoras usan los ingenieros de software en la empresa mientras trabajan y en casa?

¿Se puede considerar que la ingeniería de software es ingeniería real? ¿No debería llamarse 'creación de software' o algo así?

¿Cuál es la forma más rápida para que un estudiante de informática moleste a un programador / ingeniero de software que trabaja?

¿Un ingeniero de software en una empresa resuelve el mismo tipo de problemas repetidamente?

¿Trabajar como ingeniero de software en una empresa de comercio algorítmico es una buena decisión?