El ingeniero de software / desarrollador / programador es esencialmente lo mismo, pero con diferente nivel de arrogancia aplicado. Por lo tanto, “ingeniero” solicitaría más para un puesto de alto nivel. “Desarrollador” es su medio clásico. “Programador” es la palabra que ni a “Ingenieros” ni a “Desarrolladores” les gusta, debido a la posible implicación que esta palabra sugiere -> no hay creatividad ni proceso de pensamiento, simplemente “instruyendo a la máquina”.
Permítete inspirarte que los mejores “Desarrolladores” que conocí / respeto nunca vinieron de Comp. Fondo de ciencia “Inglés y Literatura”, “Astrofísica”, “Electrónica” son algunos ejemplos de títulos realizados por personas inteligentes que tuve la oportunidad de hablar / trabajar con él.
Principalmente estoy de acuerdo con lo que dice el Usuario, pero usaría una forma más amigable. Sin embargo, debes tener en cuenta que las personas como Justus son muy comunes en nuestra “cultura de la polla”, extrae el valor de su respuesta, ignora el resto. Estas personas al final se convierten en víctimas de otros chistes de desarrolladores, ser positivo y considerado con otras personas son cualidades muy valoradas entre los empleadores. Es fácil ser un idiota.
- ¿Cómo es ser ingeniero de software de procesamiento de lenguaje natural en Facebook?
- No me gusta mi trabajo y quiero prepararme para SSC CGL, pero dejar mi trabajo es una decisión difícil. ¿Qué tengo que hacer?
- Soy un ingeniero de software que gana alrededor de Rs 30,000 por mes en India. ¿Cómo puedo ganar más dinero durante las tardes y los fines de semana?
- ¿Los ingenieros de software felices realmente disfrutan de la programación? Soy estudiante de CS en una universidad estadounidense de élite. No me gusta programar. Si logro convertirme en ingeniero de software, estaré programando 8 horas al día (en promedio). ¿Estoy condenado?
- Como ingeniero de software generalista, ¿tiene algún valor aprender tecnologías de big data como Hadoop o Spark o es algo que beneficiaría más a los DBA?
Por mi parte, dividiré las sugerencias en varias secciones:
- Terminología y lenguaje presumido
Tengo la impresión de que intentas sobresalir mm de una manera algo ingenua 🙂 Esto es fácil cuando tienes experiencia comercial y trabajaste en ciertos nichos emocionantes que el resto del mundo desconoce pero que son difíciles cuando eres la primera vez que eres junior. Llamar a su programa de python “senior” hará reír a la gente. Llamar a su solución de Python como “programa” también es otro regalo, ya que suena como un pequeño proyecto / ejercicio. Combinación de ambos, bien entiendes 🙂 Llama a tus ‘programas’ como ‘proyectos’. La terminología correcta es importante. Los proyectos no dan visibilidad inmediata del tamaño / complejidad de lo que ha hecho hasta el momento en que se le pregunta al respecto. Si fue realmente una pequeña paz de trabajo, siempre se puede decir durante la entrevista “pequeño proyecto”. Otro, “programa de comunicación de socket en curso / avanzado / C ++ …” ¿Por qué decidió que es / avanzado /? La realidad es que cuando ha trabajado con algunas cosas modernas, complejas y geniales, no necesitaría palabras como el párrafo que describe lo que hizo con ellas y le dará al lector la confianza de que comprende la tecnología.
2. Proyectos en curso sin propósito
Cuando la gente pone proyectos sin propósito en su CV, me da vergüenza. No escribimos sockets por el bien de los sockets, no nos conectamos a bases de datos por el simple hecho de conectarse a bases de datos. “Proyecto de base de datos Python”, “Modelo cliente / servidor”. ¿Cuál fue su objetivo principal al desarrollar su proyecto de base de datos de Python? ¿Intentó crear un sistema de reserva de vuelos para guardar los detalles del cliente? ¿Intentaste desarrollar una nueva Quora? ¿Encontraste una manera de tener mini-facebook con algunas características únicas? ¿Quizás intentó simular sistemas de soporte vital para futuras expediciones a Marte? El negocio impulsa el desarrollo, cuando habla de tecnología desnuda no solo agota su conversación con el empleador en perspectiva muy rápidamente, sino que también demuestra que no encontró ninguna aplicación para el conocimiento que acaba de aprender. CV no es una publicación de blog de tecnología, recuerda eso. Aprende a cagar aquí, en algunos escenarios podrías hablar sobre la expedición a Marte durante 20 minutos en tu entrevista en lugar de responder cuál es la diferencia entre las preguntas de estilo ‘Vector’ y ‘ArrayList’, todo gracias al interesante contexto del proyecto.
No puedes tener 3 proyectos en curso, sé que no has terminado ninguno y probablemente no terminarás ninguno de ellos cuando lo lea.
3. Secciones cuestionables en CV
A menos que esté postulando para empresas que operan en el mercado de China, encuentro la sección ‘lenguaje’ como CV Space Eater, aunque puede que no sea valioso para usted cuando comience su carrera de desarrollo, será cuando tendrá pocos años de experiencia en desarrollo.
Las plataformas mencionadas por Justus no son críticas, de todos modos se le preguntará sobre su experiencia de shell si es relevante. La gente rara vez es rechazada por un trabajo por no conocer Linux, bueno, a menos que usted sea administrador de sistemas o devops.
Herramientas de nuevo algo que puede discutir en la entrevista de todos modos.
CV no es una historia de tu vida, qué pantalla usas, con qué plataforma estás familiarizado o qué codificas en Visual Studio o IntelliJ.
CV es:
A. Una muestra honesta de su experiencia laboral respaldada por evidencia
B. Una demostración de su pasión y disposición para adoptar y aprender nuevas tecnologías.
4. formato CV
Es bueno ver que comprende el valor de las viñetas, pero su CV no se destaca visualmente. Nadie le dirá exactamente cómo puede distinguirse, pero para recordar su CV de docenas / cientos un empleador necesita algunas asociaciones con su CV en su cerebro. El estilo blanco y negro es difícil de recordar.
5. Sitio web: irrelevante.
Si crea una aplicación web que demuestra la generación de laberintos y la resolución de algoritmos, sus posibilidades de ser contratado de repente aumentan drásticamente. Si crea un sitio estático donde vemos videos que está engañando con sus amigos con solo el enlace github relevante, entonces está perdiendo el tiempo de reclutador. Es más probable que el reclutador ni siquiera vaya más allá del botón animado que creó como paso adicional para ingresar a su sitio.
Se dará cuenta rápidamente de que el reclutamiento de desarrolladores es un proceso bastante serio, no agregue algo que no le brinde créditos para el puesto al que está tratando de postularse. Mantenga su Facebook, Twitter o lo que sea cerrado al mundo externo y mantenga una foto decente de usted en todo momento. Cualquier información que desee compartir con la compañía de reclutadores solo debe estar presente en la cuenta de LinkedIn. No digas más de lo que tienes que decir.
Pon un solo enlace de Github a tu !!! PDF CV !!! y enviar eso a los reclutadores en su lugar. Si absolutamente quieres tenerlo en línea, sé original, ¡desarrolla algo emocionante con él! Como el francés que creó un sitio que se parecía a la página de productos de Amazon donde se vendía a sí mismo.
6. Github: sin pruebas.
Soy desarrollador de fondo de idiomas JVM, pero puedo ver que no tienes pruebas para ninguno de tus proyectos. Aprenda sobre TDD (Test Driven Development) y por qué es importante, lo más probable es que solo lo use para aprobar entrevistas, ya que algunas empresas se masturban demasiado en TDD para que no tenga otra opción.
7. Elige tu nicho
Esto es algo discutible, pero ayudará a asegurar el trabajo más fácilmente. ¿Con qué idioma tienes más experiencia? ¿Con qué idioma te gusta más trabajar? ¿Con qué ecosistema lingüístico (bibliotecas, herramientas) está más familiarizado? Es difícil saber si desea desarrollar en Python o C ++ mirando su CV. Si bien hay una gran expectación sobre las pilas completas y los desarrolladores políglotas, su posición de entrada debe centrarse solo en una para que gane experiencia y fuerza al menos en una. Lo que hacen los jóvenes en las universidades es ridículo, la calidad del código, la estructura del código, la reutilización, etc., la mayoría de las veces no existe. El desarrollador Polyglot es alguien muy maduro. Aquellos inmaduros que intentan codificar varios idiomas a la vez la mayoría de las veces terminan como personas molestas que rompen nuestras bases de códigos y dan ataques al corazón a las personas de mantenimiento que están sudando para leer bibliotecas crípticas, cuyo propósito original es con frecuencia simple: “imprimir elementos en colección a cadena “. No conozco el mercado de EE. UU., Pero supongo que Python es más popular, lo que le brinda más oportunidades de entrevista y oportunidades para asegurar su primer trabajo de “Desarrollador de software”.
PD: Entiendo perfectamente de dónde proviene su actitud ingenua y cómo las universidades cuidan a los estudiantes al inspirarlos y ayudarlos con consejos de búsqueda de empleo. Bueno, de hecho, todas las ferias de carreras fueron tiempo de BS para mí. Todos hemos estado allí con anteojos rosados pensando que la industria nos espera con los brazos abiertos.
Después de obtener su trabajo, lo primero que quiere aprender es “Cómo hacer preguntas para obtener ayuda de sus compañeros”. Y no olvide escuchar lo que dicen.
Pensarías que es fácil, pero no puedo enfatizar cuántos jóvenes no se molestan en formular sus preguntas mientras molestan a casi todos en el proceso:
“Junior: Hey, ¿podrías ayudarme?”
“Yo: Sí, ¿qué pasa?”
“Junior: ‘It’ no funciona (cara triste <:-("
“Yo: ¿Qué no funciona?”
“Junior: ‘Este’ estúpido código no se compila”
“Yo: Oo”
“Yo: ¿Cuál es el contexto?”
“Junior: estoy tratando de analizar ‘este’ archivo pero ‘no’ funciona”
“Yo: (Inhalación profunda, exhalación lenta) Qué ‘este’ archivo”.
“Junior: (Expande el árbol de directorios y apunta al archivo)”
“Yo: ¿Qué estás tratando de hacer exactamente?”
“Junior: Bueno … (se desplaza por la clase con 1k líneas de código, la mitad de las cuales en un solo método)”
“Yo: Intente descomponerlo en varios métodos para una mejor legibilidad y luego escriba pruebas para que pueda verificar el comportamiento de su código según los requisitos. Después de hacer esto, intentaremos dividir el código en varias clases “.
“Junior: (exhala, me mira gruñón, este es mi momento favorito)
Me voy y 30 minutos después vuelvo.
“Yo: Hola, ¿cómo te va?”
“Junior: (sudando, jadeando, incluso si no sabía cómo depurar ahora usa atajos como rambo que pasa por cada línea como un terminador sediento de sangre con 2 rpgs en cada mano, cazando al pobre insecto [por eso es esto “mi momento favorito”], estoy pensando que si le diera un rifle en este momento y lo enviara a la guerra a algún lugar distante, no habría ninguna duda y resolución completa “.
“Junior: todavía no puedo encontrar el problema … (se recuesta en la silla)
“Yo: ¿descompusiste tu código?”
“Junior: Sí”
“Yo: ¿Escribiste pruebas?”
“Junior: No”
“Yo: ¿Por qué no?”
“Junior: estoy tan cerca, es solo este método estúpido”
“Yo: Ok, sin pruebas pasarás mucho tiempo rastreando el problema, llámame cuando las escribas ¿OK?”
“Junior: está bien (la cara gruñona vuelve a la posición de rambo)”
“Yo: (pensando” Probablemente debería renunciar a la humanidad ya que las personas son tan tercas “, volviendo a mi escritorio).
20 minutos después escucho “SÍ, OH SÍ”
“Yo: (curiosamente acercándose al chico)”
“Junior: Encontré el error, es este error tipográfico en mi constante, por eso ‘x’ no coincidía con ‘y'”.
“Yo: ¿Cómo encontraste esto?”
“Junior: (sonrisa furtiva), la primera prueba que escribí reveló el error”
“Yo: ¿Muuuuuuy?”
“Junior: ¡Gracias! Ahora entiendo el valor de las pruebas tralalala bla bla bla bla, abrieron mi mundo y mi razón de ser ”(exagerando, por supuesto, pero algo en ese sentido).
Luego enseño cómo el tiempo dedicado a toda la tarea podría reducirse dos veces. Después de un año, los juniors vienen con preguntas válidas ‘desagradablemente’ como: “Traté de hacer la consulta x en hibernación para devolverme una lista de y, pero veo una cantidad de duplicados y, de acuerdo con stackoverflow, esto puede suceder cuando hay resultados duplicados en uniones Tengo pruebas que prueban el caso, pero no puedo entender de dónde provienen los duplicados, pero se comportan de manera diferente entre la prueba y el entorno de la etapa, ya que hay una alta tasa de volatilidad de datos y dejamos la deuda técnica ‘G’ que podría explicar este comportamiento hoy, pero discutimos la deuda en 2016 en la fiesta de Navidad cuando estabas un poco borracho, así que no estoy seguro de cuánto recuerdas, pero sigo creyendo que eres un tipo muy inteligente / bueno / ayudante (porque necesito tu ayuda ahora), así que toda esperanza depende de ti. ”- Este es el momento en que entiendo que me estoy haciendo vieja y que la nueva generación está lista. Entonces miro al techo y a veces digo esto:
“Creo que puede resolver este problema usted mismo en una hora y luego mostrar cómo lo hizo, ya que honestamente no tengo idea en este momento”
En una hora, la mayoría de las veces vienen de una manera orgullosa, inclinada hacia atrás con las piernas marchando por delante del cuerpo y las manos en los bolsillos pidiéndome un cigarrillo sabiendo que nunca puedo rechazar un ‘ciggie’ en una ocasión tan maravillosa.