El año pasado, Stack Overflow, un sitio de preguntas y respuestas para programadores, preguntó a su usuario si tenía un título en Informática (CS).
Los resultados de la Encuesta de Desarrolladores 2015 fueron sorprendentes. Casi la mitad de los 26,086 desarrolladores que respondieron no tenían un título en ciencias de la computación.
¿Esto significa que puedes ser un programador sin un título universitario? En pocas palabras, sí. Pero el camino no tradicional hacia el mundo de la programación es obviamente más difícil que si tuvieras un título de CS.
John Reed, director ejecutivo senior de la agencia de personal Robert Half Technology, dijo que muchas empresas de tecnología bien establecidas utilizan la educación universitaria como un criterio inicial para eliminar a los candidatos.
- ¿Cuál es el peor resultado de una decisión equivocada que ha tomado?
- ¿Crees que toda la vida en la tierra vino de una sola célula? Si es así, ¿cómo explicas la diversidad?
- ¿Cómo son las formas en que puedo manejar mi vida?
- Cómo encontrar mi área de interés
- ¿Puede describir una situación en la que algo en la vida no resultó como estaba planeado?
Google, por ejemplo, no entrevistará a ningún candidato de posición de ingeniería de entrada que no tenga un título de CS.
Si ese es el caso, ¿por qué muchas personas no tienen un título universitario? Un factor externo importante son las exorbitantes tasas universitarias.
En los EE. UU., Por ejemplo, la opción más barata es la universidad pública de dos años que cuesta en promedio $ 11,438 / año y la opción más cara, las universidades privadas de cuatro años sin fines de lucro cuestan alrededor de $ 43,921 / año, excluyendo todos los gastos de subsistencia.
También hay otros factores. Una es la explosión de cursos en línea o campamentos de corta duración que le permiten poner en práctica las enseñanzas sin tener que esperar años para graduarse.
Entonces, si decide tomar la ruta no tradicional a la programación, aquí hay algunos consejos para usted.
1. No trabajes en soledad.
Encuentre un lugar donde pueda trabajar junto con otros programadores, independientemente de si está trabajando en el mismo proyecto.
El peor desafío que puede tener al escribir código solo es que no tiene idea de lo que no sabe. Eso es hasta que vea lo que está mal con su código comparándolo con el de otros.
Un estudio realizado por Barry Boehm del Instituto de Ingenieros Eléctricos y Electrónicos sugirió que revisar el código con otras personas, ya sea que se ejecute o no la programación par (una técnica en la que trabajan dos programadores en una estación de trabajo), puede descubrir hasta el 60 por ciento de los errores en comparación con el trabajo solo.
Los espacios de trabajo conjunto pueden proporcionarle este tipo de beneficio, donde puede trabajar junto con personas de ideas afines. Puede usar este directorio de espacios de coworking para encontrar uno en su área local.
2. Las relaciones fuertes son más importantes que una buena programación.
Otra consecuencia positiva de no trabajar en soledad es la posibilidad de establecer relaciones tempranas en su carrera que podrían pagar dividendos más adelante.
Cuando desarrollas una relación sólida con otros programadores, te ayudarán a comparar tus habilidades con tus compañeros y mejorar tus habilidades de programación con el tiempo.
3. Póngase al día con lo que se hubiera perdido al no tomar CS
Greg Neustaetter, el director senior de productos en Egnyte, una empresa de intercambio de archivos en la nube admitió que “había grandes lagunas de conocimiento en cuanto a las cosas que habría tenido si hubiera pasado por un fondo de CS”.
La regla de oro para la lectura es que si dominas el conocimiento fundamental de seis u ocho libros, serás un desarrollador sólido.
Algunos de los libros recomendados van desde matemáticas discretas con aplicaciones, patrones de diseño o patrones de diseño J2EE, hasta diseño de algoritmos.
Para cursos en línea o campamentos de entrenamiento, se recomienda que tome uno que tenga un enfoque de abajo hacia arriba, a menos que tenga una cierta experiencia previa en programación o una afinidad natural con la tecnología.
A diferencia del enfoque de arriba hacia abajo que educa a los estudiantes al “tirarlos en medio de una aplicación o un marco y los alienta a unir las piezas de conocimiento”, el enfoque de abajo a arriba “comienza con lo básico y se desarrolla lentamente. El conocimiento a lo largo del tiempo “.
El enfoque de abajo hacia arriba se recomienda para los principiantes porque minimiza la cantidad de conceptos poco claros que los estudiantes generalmente dan por sentado con el enfoque de arriba hacia abajo.
Uno de estos conceptos poco claros, por ejemplo, proviene del libro sobre Ruby on Rails. Comienza su primer capítulo con el concepto de diseño Modelo-Vista-Controlador y no explica nada sobre lo que lo conforma, por ejemplo, la programación orientada a objetos.
4. Sigue construyendo cosas
Con o sin título, tener proyectos externos que puede mostrar no solo es importante para la futura colocación profesional, sino que también es una forma efectiva de aprender mientras se obtiene más experiencia.
Esto es aún más importante si no planea obtener un título de CS ya que estos proyectos serán su cartera principal que muestra sus habilidades. Una buena manera de comenzar su propio proyecto es crear aplicaciones móviles. Esto se debe a que puede presentar fácilmente su producto a los usuarios finales y, a cambio, recibir comentarios directamente de los usuarios.
Si piensa hacer sus primeras aplicaciones móviles, le sugerimos que aprenda Swift o Objective C para iOS, Java para Android y C #, Visual Basic o Javascript para Windows Phone.
Otra alternativa es utilizar tecnologías como Phonegap y Titanium para crear una aplicación que pueda ejecutarse en las tres plataformas principales. Estas tecnologías le permiten escribir utilizando HTML, CSS y Javascript, y ejecutar su aplicación nativa en todas partes.
También puede contribuir a proyectos de código abierto a través de los repositorios de tendencias en Github. O por el simple hecho de obtener más conocimiento, cree algo para su propio uso.
5. Tener un trabajo secundario en tecnología
No hace falta decir que la creación de su propio programa por primera vez no pagará sus facturas. Incluso si tuviera una idea de aplicación de $ 20,000, no puede pedir ese precio porque no tiene suficiente credibilidad.
En otras palabras, debe tener un trabajo paralelo donde pueda cubrir sus facturas, de preferencia uno que también pueda mejorar sus habilidades de programación.
Dependiendo de cuán avanzadas sean sus habilidades de programación, siempre puede optar por nuevas empresas, trabajar en Control de calidad (QA) o trabajar de forma independiente.
Las nuevas empresas en general están más dispuestas a asumir riesgos y contratar a alguien con poca o ninguna experiencia práctica. Sin embargo, hay un límite a lo que ellos consideran un programador “suficientemente bueno”.
Si bien no tiene que construir algo sólido con código mantenible, necesita al menos demostrar que puede construir algo que funcione. Por ejemplo, trate de hacer una maqueta de una característica que tenga su inicio potencial.
Si no puedes hacerlo, trabajar en QA te ayudará a mejorar tus habilidades técnicas.
El trabajo en control de calidad implica la identificación de problemas en un producto y la sugerencia de cambios y correcciones, que también es una base fundamental de la resolución de problemas (problemas de descomposición y depuración sistemática) en la programación.
Lo bueno de trabajar en control de calidad es que siempre que tenga confianza en sus habilidades técnicas, un título universitario formal no es una necesidad.
La última opción es trabajar independientemente en cualquier cosa, siempre que pueda cubrir sus facturas. Un sitio web como Upwork, por ejemplo, enumera una variedad de trabajos relacionados con la tecnología que van desde el desarrollo web y móvil hasta el diseño y el marketing.
Fuente : ¿Por qué la mitad de los desarrolladores no tienen un título en informática?