Entrevistas como Software Developer

Hola leyendas del desarrollo de software … Upps que saludo más largo, hay que trabajarlo, pero bueno ese no es el tema, hoy quiero contarles que he paseado por varias empresas y me gustaría compartir las cosas por las que he pasado en la búsqueda de trabajo y los temas técnicos que me han preguntado en las entrevistas más influyentes a las que he asistido.

1. Conceptos básicos de POO

Estos conceptos no me los han preguntado en toda las empresas, pero sí en las buenas empresas. Te llevarán en un recorrido por todos los conceptos de POO, entonces hay que tener muy claro que es: Clase , objeto, un constructor, Encapsulamiento , herencia, abstracción y todo lo que comprende de herencia como: polimorfismo, sobrecarga , sobrescribir, diferencia entre una Abstracción y una interfaz

2. Metodologías ágiles

Las empresas de software por lo general utilizan SCRUM o Kamban, entonces prepárate!, investiga un poco al respecto, si nunca lo has usado triste, porque es algo que se aprende con la práctica y no en la teoría, si no llevan metodología pues ALERTA ROJA! No será una empresa en la que puedes llegar a desarrollar todo tu potencial, pero si estas necesitando el trabajo y las oportunidades son pocas dale, si no hay afán déjala ir. En lo personal he dejado pasar varias oportunidades por esa razón, ya que es para mi es un mensaje de que no tiene control de los proyectos y pueden pasar dos cosas, te clavan trabajando como esclavo o te dejan olvidado en un rincón, porque no saben que ponerte a hacer, en lo personal las dos experiencias son de esas que uno no quiere repetir.

3. Manejo de Repositorios

si no conoces de git y github, lo siento amig@ empieza ya a hacer un curso, en udacity(Universidad de Google ) tiene uno muy bueno dejo el link para que lo revisen, en lo personal y en varios post que he leído, compartimos el pensamiento de que git y github es una excelente herramienta para aprender y para leer código, ya que en esta profesión pasas más tiempo leyendo código que escribiéndolo, también es muy bueno para tener un mejor proceso y control de tus proyectos, por otro lado el github se está convirtiendo en el facebook que usan los reclutadores para revisar que calidad de código escribes, no solo está git, también están otras como mercurial, subversión etc, pero pues nada git es lo mejor que hay, los otros no servían y por eso nació git.

4. Conceptos Básicos de la tecnología y Pruebas técnicas

Algunas veces, lo que hacen es ponerte una prueba técnica y echar código como loco, y ademas pretenden que lo hagas en 48 horas o algunas son más flexibles y deja que tu elijas el tiempo, en lo personal si estás aprendiendo dale con toda! preséntalas, esto te ayudará a mejorar tus habilidades y aprendes muchísimo, sobre todo en las que te piden usar un framework o librería en particular. Si ya tienes un conocimiento más sólido y la prueba es larga, evalúa si esa es la empresa en la que quieres estar, porque puede ser tiempo perdido o puede ser alguna tarea que tiene pendiente y después ni siquiera te llamarán. Otra cosa presenta la prueba si ya conocen la empresa y en realidad te llama la atención, porque el desarrollo de software es algo que tiene una gran demanda y puede que en una semana acumules una gran cantidad de pruebas técnicas y poco tiempo para hacerlas.

5. Como se hacen las cosas bien

El conocer arquitecturas, patrones de diseño, testing code, principios SOLID, clean code y craftsmanship es algo muy importante es algo que habla por ti, diciendo que eres una persona que se preocupa por tener código limpio mantenible y testable, no en todas las empresas piden eso, incluso algunos ni saben que eso existe, pero es algo muy importante. Si eres una persona apasionada por el desarrollo estas herramientas ayudarán a que avances como profesional.

Casi lo olvido, el manejo del Inglés es muy importante! Invierte en eso.

Este post está muy orientado a teoría tecnica, una persona que me entrevisto y con que le compartí el post después de la entrevista me dijo que: “no olvidara mencionar lo importante de escribir una buena hoja de vida, si eres nuevo no te preocupes algo debes saber y aprovecha para plasmarlo ya sea en una githubpages, creando tu propia web o en tu hoja de vida.”

Otro consejo. Piensa bien qué tipo de trabajo quieres, en mi opinión quiero estar donde te pagan por objetivos y no por horas culo en una silla. Recuerda que en ese lugar vas a pasar mucho tiempo, así que pregunta todo lo que puedas al entrevistador. Y si tu objetivo es ser un excelente desarrollador te recomiendo que busques lugares donde hay gente con experiencia, pregunta eso en la entrevista o puedes revisar en linkedin de los integrantes de la empresa. Eso es todo me despido y espero que les ayude de algo este post

Curso de Git y github https://goo.gl/D4f7sQ

Patrones de Diseño : https://goo.gl/6pdPFM

SOLID: https://goo.gl/z73xFg

craftsmanship:https://goo.gl/o0kC2T

clean code: https://goo.gl/qi9q3k