martes, 28 de febrero de 2017

El siguiente paso de un programador




3 tipos de programadores

Los programadores web (php, asp.net, java, ruby, python), los programadores de aplicaciones móviles (android/ios) y los de escritorio (.net, java, otros) siendo estos últimos los menos renumerados en algunos casos, porque he visto programadores Power Builder que cobran bastante bien.

Yo voy hacer énfasis en la tecnología Web, ya que es lo que pongo en práctica día a día y mayor experiencia tengo. Vamos a segmentar el mercado de los desarolladores web en BackEnd y FrontEnd.

Frontend: desarrolladores que dominan la tecnología del lado del cliente como javascript, html, css.

¿Qué hacen?: landing pages, CMS, aplicaciones usando Frameworks SPA, Responsive Design, Photoshop a HTML, entre otros.
Renumeración: menor a la de un backend.

Backend: aquellos que desarrollan para el lado del servidor, dominan un lenguaje de programación como Java, .NET o PHP y conocimientos en base de datos como Oracle, SQLServer o MySql, entre otros. En este punto tenemos dos tipos de backend, el backend que hace páginas web y el que hace sistemas web.
Desarrollador de páginas web: estos trabajan más para agencias digitales encargadas de promover y crear presencia a una marca corporativa y tienden a usar softwares ya creados/testeados como joomla, wordpress, drupal, magento, prestashop entre otros-
¿Qué hacen?: implementación de CMS y/o Ecommerce (usando un software), páginas dinámicas, formularios, etc.

Renumeración: menor al del desarrollador de sistemas web.
Desarrollador de sistemas web: estas personas desarrollan software a medida trabajando para entidades financieras, bancarias, estatales entre otros para automatizar las tareas internas de una empresa.
¿Qué hacen?: análisis y desarrollo de software en base las funcionalidades del cliente, optimización de módulos, migraciones, etc.
Renumeración: mayor a los mencionados anteriormente.

¿Y los desarrolladores móviles?, en este mundo encontramos desarrolladores IoS y Android en lo que demanda más el mercado.

¿Qué hacen?: desarrollo de aplicaciones, emprendedores por naturaleza.
Renumeración: diría que esta a la par entre un Backend o incluso más en algunos casos. Lo malo es que normalmente son contratados por proyectos, y estos proyectos son de menor duración.


Antes de que vayas a comentar algo y poner cuanto es lo que ganas, las renumeraciones lo he hecho en una comparación en general. Yo se que hay Frontends mejor pagados que un backend pero eso es por la experiencia y conocimientos que pueda tener. Mi comparación ha sido bastante generalizada.
¿A dónde apuntar ahora?
En el mundo de los programadores tenemos 2 caminos, los que vienen de las universidades viendo tecnología como .NET/Java, ya que son materias de estudio y han visto que existen mayores cosas dentro de la carrera de ingeniería que no es solo programación y los que aprendieron la tecnología por su cuenta y no tuvieron la necesidad de cursar una carrera universitaria relacionado a la tecnología (cosa que en realidad hoy en día no hace falta para conseguitr trabajo).

Bien te comento las posibles lineas de carrera que podemos aspirar:

Me gusta la base de datos:

Entonces lo tuyo es ser un DBA (Database Administrator), apuntando a Oracle o SQLServer. Si puedes certifícate.
Lo mío es Business Intelligence, tu habilidad es transformar datos en conocimiento y este conocimiento en información para el futuro de una empresa. El mercado actual solicita bastante gente de BI en SQLServer y Oracle, y son muy bien renumerados. ¿No te gusta programar?, apunta a este perfil, eso sí intenta certificarte, toma las certificaciones de Microsoft que son “más sencillas” que otras y hay muchos centros donde te preparan.

Reporteadores, con tus habilidades de SQL podras trabajar en una empresa haciendo reportes el cual es bastante interesante, eso si hay que ser un lobo haciendo reportes, Procedures de 564645 líneas.
Me gusta la programación:

Y sobre todo a mí, entonces porque nos aspiramos a ser ¿Arquitectos de Software?, es un puesto muy bueno pero llegar a esto requiere ser muy habilidoso, conocer mucho de tecnología y no solo un lenguaje, tambien se solicita arquitectura de servidor. Comienza obteniendo certificados, constancias de estudios en UML, POO y lo que piden ahora mucho SOA. Muy bien renumerados, sueldos atractivos, sobre todo apunta a SOA hermano, son recontra pagados.

Jefe de proyecto: desde mi punto de vista deben conocer de tecnologìa para que su equipo de trabajo no los pasee, pero tambièn debe tener un alto criterio tomando deciciones, es decir debe tener experiencia como analista y programador. Para llegar a este puesto tenemos que esperar que el jefe actual renuncie o se muera y haber tenido experiencia previa como jefe de proyecto (¿irónico?) para suplantarlo. Habilidades necesarias, conocer de tecnología, metologías de desarrollo (Scrum, Rup) y buena habilidad analítica. Son muy bien renumerados, es el máximo cargo.
¿Por qué no realizar un software propio?, puedes hacer un software e ir comercializandolo para luego vivir del soporte. El truco es saber que necesidades buscas satisfacer para determinar tu público objetivo.
No me gusta programar:

Analista funcional: olvidate del código y empieza a llevar cursos de UMl, CMMI, BPM para aspirar a esto, nuestra tarea sera capturar los requerimientos del cliente, diagramarlo y dárselo a los programadores para que sufran, luego serás un medio entre el cliente y el equipo de desarrollo.
Consultor: jur, yo quisiera esto. Basicamente, ellos trabajan en empresas grandes donde el desarrollo del software es tercerizado, entonces su trabajo es ver que el proveedor cumpla la tarea, en sí conversan con los analistas funcionales del equipo del desarrollo. Habilidades requeridas: “vara“, UML, SCRUM, RUP, Gestión de proyectos y SQL entre diversos cursos que deberan ir capacitándose. Sueldos sabrosos. Te pueden contratar empresas grandes como entidades del estado, bancos, entre otros.
Analista QA: para mí este debe conocer de software, sino que calidad va a darle al software. Su función es testear el software para verificar que cumplan el flujo correctamente y no hayan presenciencia de bugs.
Analista de seguridad de información: tengo un profesor que se dedica a esto, pero tambien ve mejora continua, PCI DSS, criptografía, itil, infraestructura tecnológica entre un largo etc.

Project Management: las buenas prácticas para dirigir un proyecto y asegurar el éxito evitando la menor cantidad de errores. Eso es lo que hace un PMP. Son bien renumerados pero la certificación toma como 5 años.
Especialízate en un software: aprende como funciona un ERP, CRM y como lo puedes adaptar a tus clientes en base a sus requerimientos. Apunta a softwares grandes, hace un tiempo fue el Sharepoint, actualmente me comentan que esta bajando el mercado, no apuntes a Drupal, WordPress, Joomla que no pagan mucho por la competencia actual. Aparte que dominar un ERP es tarea compleja, hay centros que especializan y estos consultores son bien solicitados en muchas empresas para abastecer y dar soporte a sus actividades internas.
Los que he mencionado basicamente es para los que siguen la línea de ingeniería de software/sistemas.

Hay muchas caminos más a seguir:

Consultor SEO: especialista posicionado sitios webs en los buscadores (Google).
Estratega Digital: conoce de SEO, sabe como impactar una marca en el internet y convertir a sus visitantes en potenciales clientes liderando una buena estrategia de marketing.
StartUp: oyeee, este es un camino muy bueno pero dificil, basicamente es crear un negocio a base de tecnología supongamos que un sitio web que venda películas. El camino es complicado, se requiere mucha paciencia y estar respaldado por una buena estrategia de marketing. Antes de hacer un startup piensa ¿Cómo lo voy a monetizar?, ¿Cul es mi mercado actual? ¿Cuáles son mis objetivos? ¿Cómo voy a complir mis objetivos? ¿En cuánto tiempo quiero cumplir los objetivos?. Hay metodologías que te ayudan a emprender tu StartUp y bastantes charlas para que puedas emprender, pero defintivamente el mejor consejo que te puedo dar es “Equivocate rápido y aprende de el”.

Community Manager: ESTO ES UNA ESTAFA, no apuntes a esto y va más orientado a los de la carrera de comunicaciones/marketing. En conclusión es estar todo el día publicando tonterías en el Facebook con la finalidad de aumentar los LIKES, no miden, no generan conversiones, no hay una estrategia en medio.

fuente anexsoft.

2 comentarios:

  1. Difiero totalmente del comentario de Community Manager, no es un aestafa, efectivamente va mas enfocado a Diseño/Mkt/Comunicaciones. No solo es estar todo el dia en redes sociales, es un trabajo de mucha investigación y no solo conseguir "likes", claro que se puede medir la eficacia de este puesto en base a metricas.

    ResponderEliminar
    Respuestas
    1. Tiene algo de razón tuve un docente de comunity manager y solo nos enseño a como administrar un fanspage de facebook, twitter, etc. community manager definitivamente es de marketing.

      Eliminar