Cómo postularse para un puesto de programador
1. Sistema de control de versiones (VCS)
VCS es probablemente la mayor omisión en los cursos de informática. Estos cursos solo recuerdan enseñar cómo escribir código, pero a menudo se olvidan de enseñar a los estudiantes cómo administrar el código. Todo programador debe saber cómo usar Git o Subversion para crear repositorios, editar y confirmar código, bifurcar y fusionar de manera efectiva, y comprender los flujos de trabajo de proyectos.
2. Escribir
Como programador, necesitas escribir algo más que código. También debe escribir notas de la versión para el proyecto, enviar mensajes para el control de versiones e informes de errores internamente dentro del sistema. Estos y muchos otros lugares requieren una escritura clara y eficaz, una habilidad que rara vez se enfatiza en la informática.
3. Expresiones regulares
Las expresiones regulares son un lenguaje en sí mismas y todo programador moderno debe dominar las expresiones regulares. Todos los lenguajes modernos admiten expresiones regulares o tienen una biblioteca estándar de expresiones regulares. Si su código necesita verificar si una cadena contiene 5 caracteres, un guión y un número, debe escribir inmediatamente /^[A-Z]{5}-\d$/.
4. Utilice bibliotecas
Estamos en 2014 y nadie necesita usar expresiones regulares para analizar nombres de host de URL. Esto se debe a que cada lenguaje de programación moderno tiene una biblioteca estándar que realiza funciones de uso común. Los programadores deben comprender que el código desarrollado, probado y depurado suele ser mejor que el código que ellos mismos reescriben. Es más, es mucho más rápido de implementar sin tener que escribir código.
5.SQL
Sorprendentemente, muchos programadores aprenden SQL en el trabajo. Atrás quedaron los días en los que se almacenaban datos en archivos planos. Todo entra y sale de la base de datos y SQL es el lenguaje para acceder a los datos. Es un lenguaje descriptivo, no un lenguaje de programación, por lo que utilizarlo para resolver problemas requiere una nueva forma de pensar. Todo programador debe conocer los conceptos básicos de la normalización de bases de datos y poder realizar SELECT (y INNER, OUTER JOIN), INSERT, UPDATE y DELETE.
6. Herramientas IDE, Editor y CLI
Un carpintero que sólo sabe utilizar una sierra nunca llegará a ser un maestro, por eso sorprende que los licenciados en informática sólo sepan utilizarla. bloc de notas o pico. Las herramientas de programación ayudan a manipular el código y otros datos, lo que facilita la vida del programador. Por lo tanto, todo programador debe conocer el uso de la línea de comandos, los scripts de shell, find, grep y sed.
7. Depuración
Todo programador debe saber cómo depurar un programa utilizando un depurador interactivo o agregando declaraciones de salida al código. La capacidad de realizar un seguimiento de los problemas mediante mejoras incrementales es muy importante.
8. Programación a prueba de errores
Incluso para los programadores estrella, los errores son inevitables. La pérdida de control es la norma en este mundo y no sorprende que las cosas salgan mal. La programación Poka-yoke consiste en comprender este hecho. Sin errores, no habríamos verificado que el archivo se abrió correctamente, no habríamos verificado que la identificación del cliente fuera un número legítimo y no habríamos tenido que probar que el código permitiera que funcionara correctamente. Los programadores necesitan saber que las alertas del compilador son herramientas útiles para hacer la vida más cómoda, no molestias que deben evitarse. Todo programador debería saber por qué cada programa PHP comienza así: seterrorreporting, y por qué cada programa Perl tiene declaraciones como esta: use estricto, use advertencias;
9. Trabajo en equipo
Pocas tareas de programación las completas tú solo. Si haces esto con demasiada frecuencia, tu inteligencia se verá dañada y tu rendimiento disminuirá. Su código debe interactuar o mezclarse con el código de otras personas. Incluso el programador más talentoso puede tener un impacto negativo en un proyecto y convertirse rápidamente en una carga para el equipo si no puede colaborar con otros.
10. Aprovechar el código existente
En la escuela, cada tarea es un proyecto nuevo, pero no siempre es así. Para las personas que acaban de incorporarse al mundo laboral, la primera tarea que reciben suele ser corregir las vulnerabilidades del código. Luego, agregue una pequeña característica al sistema existente según el código existente. Con un poco de suerte, pasarán varios meses antes de que se diseñe el nuevo código. Por lo tanto, su primer paso como programador debe ser aprender a aprovechar el código existente.