Focos de atención
Ingeniero de backend, Desarrollador del lado del servidor, Desarrollador de software de backend, Programador de backend, Desarrollador de sistemas de backend, Desarrollador de API, Desarrollador web (backend), Desarrollador de bases de datos, Arquitecto de backend, Ingeniero de integración de sistemas
Para crear sitios web potentes y con capacidad de respuesta que reciban millones de visitas se necesita un equipo de especialistas cualificados. Mientras que los desarrolladores de front-end se centran en la interfaz con los usuarios, los desarrolladores de back-end se encargan de la parte técnica que no se ve: los servidores, las bases de datos y las aplicaciones. Estos trabajadores son los gurús detrás de la cortina que construyen los marcos del sitio y colaboran con otros miembros del equipo para garantizar que todo se integre sin problemas y funcione como debe.
Escriben los servicios web que permiten "el intercambio de datos entre aplicaciones o sistemas" (como dice Tutorials Point) y las interfaces de programación de aplicaciones que permiten que las diferentes aplicaciones se comuniquen entre sí. Los desarrolladores de back-end también escriben los scripts del lado del servidor que permiten que las aplicaciones web funcionen correctamente. Su trabajo consiste en colaborar con la dirección y los clientes para garantizar que todos los cambios propuestos puedan aplicarse sin problemas.
- Se le encomiendan grandes responsabilidades, aunque el trabajo es "entre bastidores"
- Oportunidades para ayudar a las organizaciones a crecer y ser más rentables
- Trabajo en equipo y colaboración con profesionales de Front-End y DevOps
- Desarrollo de habilidades de alta demanda que pueden ser utilizadas en cualquier lugar de la Tierra
Horario de trabajo
Las organizaciones confían en los desarrolladores de back-end para que les ayuden a crear sitios web rápidos y potentes, capaces de ofrecer una serie de servicios y de captar la información de los usuarios. Se espera un trabajo a tiempo completo, a no ser que se trabaje por cuenta propia, en cuyo caso debería haber contratos amables para mantenerse ocupado. Sin embargo, el tiempo dedicado a buscar clientes no es remunerado, al igual que el tiempo utilizado para refrescar las habilidades y practicar otras nuevas a medida que la tecnología evoluciona. En el caso de los que trabajan a sueldo para una gran empresa, pueden ser necesarias horas extra cuando las cosas se retrasan o surge un problema inoportuno.
Tareas típicas
- Trabajar estrechamente con los desarrolladores de front-end para incorporar su trabajo en el lado del servidor
- Escribir código limpio, optimizar y depurar aplicaciones, y crear bibliotecas
- Desarrollo de aplicaciones optimizadas para la velocidad, el rendimiento y la escala
- Creación de prácticas sólidas de seguridad de datos
- Construcción de soluciones de almacenamiento de datos
- Especificación de los requisitos técnicos de los puestos de trabajo
- Estar al día de las nuevas tendencias y tecnologías que pueden mejorar las aplicaciones
- Colaborar con un equipo multidisciplinar
- Optimizar continuamente los procesos
Responsabilidades adicionales
- Garantizar el cumplimiento de los protocolos de la organización
- Ofrecer formación en alternancia y orientación a los compañeros de trabajo afiliados
- Participar en conferencias y programas educativos relacionados con el sector
- Respuesta y gestión de incidentes "de guardia"
Habilidades blandas
- Capacidad para facilitar la colaboración
- Atención al detalle
- Capacidades de gestión del cambio
- Pensamiento crítico y capacidad para resolver problemas
- Servicio de atención al cliente
- Decisividad
- Flexibilidad
- Buena capacidad de organización y gestión del tiempo
- Grandes habilidades interpersonales y de comunicación
- Habilidades de liderazgo y gestión
- Fuerte conciencia de seguridad
- Orientado al equipo y centrado en los objetivos
Habilidades técnicas
Hay numerosos temas técnicos con los que hay que familiarizarse, entre ellos:
- Accesibilidad
- Marco CMS
- Herramientas de versionado de código
- Administrador de la base de datos
- Salida de datos y migración de datos
- Lenguajes frontales (HTML, JavaScript, CSS)
- Hospedaje
- Integración
- Python, Java, Ruby, .NET y PHP
- Plataformas móviles
- Escala
- Cumplimiento de la seguridad
- Preprocesadores CSS del lado del servidor
- Gestión de la sesión
- Configuración y administración de las copias de seguridad
- Plataformas de prueba
- Autenticación/autorización de usuarios
- Desarrollo web
- Empresas de informática y software
- Agencias gubernamentales/militares
- Sanidad
- Centros de enseñanza superior
- Grandes empresas
- Medios de comunicación y entretenimiento
- Autónomos
¿Qué sería del mundo sin los desarrolladores de back-end? Los trabajadores de este campo hacen que el mundo moderno funcione, aunque pocas personas se paran a pensar en todo el esfuerzo que conllevan los sitios web, las aplicaciones y otros recursos tecnológicos de los que dependemos cada día. Este es uno de los campos profesionales más importantes pero menos reconocidos, por lo que podemos considerar esa falta de reconocimiento como un sacrificio.
Se aprecie o no, este trabajo es fundamental para el éxito de las organizaciones. Sin sitios web y aplicaciones plenamente operativos, el trabajo se detiene y las empresas empiezan a perder dinero. Un error puede afectar a una función del sitio web que resulta ser crucial. Algunos errores pueden tener un efecto dominó capaz de arruinar un sitio por lo demás perfecto o de abrir una vulnerabilidad para que la exploten los hackers. Basta con decir que las expectativas son altas y también los niveles de estrés laboral.
La tecnología nunca es estática, por lo que los desarrolladores de back-end deben estar siempre al tanto de los últimos avances. Algunos temas de actualidad son HTTP/3, que utiliza un protocolo más rápido conocido como QUIC (Quick UDP Internet Connections). También está aumentando el uso del lenguaje de consulta de API GraphQL. Al ser un lenguaje de código abierto, ¡espera cambios! Otras tendencias son el continuo avance de la IA y los sistemas de procesamiento del lenguaje natural. Han llegado para quedarse y cada vez serán más populares. Una última tendencia que mencionaremos es Nest.js, un marco construido con TypeScript y hecho para escalar aplicaciones del lado del servidor. Mantén los ojos abiertos para más desarrollos.
Los desarrolladores de back-end no tienen ningún afán de protagonismo, sino que disfrutan trabajando en sus proyectos entre bastidores. Cuando eran más jóvenes, probablemente les ocurría lo mismo, se alegraban de disfrutar de sus pasatiempos en soledad y sin fanfarrias. Obviamente, es probable que se interesaran pronto por los ordenadores y, en concreto, por la codificación o las áreas que van más allá de lo que el usuario medio se involucra. Puede ser divertido saber sobre cosas que otros no saben, y esto puede llevar a un vínculo compartido entre desarrolladores con los mismos intereses y conocimientos únicos.
Los profesionales de este campo tienen trabajos exigentes y probablemente siempre han tenido una fuerte ética de trabajo y atención al detalle. Pueden ser ferozmente independientes, pero están encantados de transmitir lo que saben a otros con pasiones similares. Además, dado que a menudo colaboran con los desarrolladores de front-end, deben poseer un buen don de gentes, adquirido a través de experiencias escolares, familiares o laborales tempranas. Saben cómo asociarse con otros, dirigir el trabajo, dar y recibir, y encontrar soluciones viables en las que se pueda confiar.
- Una licenciatura en programación informática, ciencias de la computación o un campo relacionado
- Cursos para desarrollar habilidades de organización, gestión del tiempo y comunicación
- Clases en lenguajes como Python, PHP, Ruby on Rails, Node.js y Laravel
- Tecnología de servidores web como Apache y NGINX
- Bases de datos, como MySQL, MongoDB o PostgreSQL
- Sourcetree, cliente de Github
- Plataformas de microservicios - Docker, Kubernetes
- Entornos de desarrollo locales - WampServer, Laragon, XAMPP
- Plataformas de colaboración como Jira o Slack
- Comprobadores de velocidad como Google PageSpeed Insights
- Hay innumerables sitios que ofrecen cursos, certificados y bootcamps para prácticamente cualquier habilidad que necesites trabajar. Algunos de los sitios más populares son:
- Betamore
- Bloc.io
- CompTIA
- Coursera
- edX
- Asamblea General
- LinkedIn Learning
- Pluralsight
- Udacity
- Udemy
- No existe una especialidad específica llamada "Desarrollo de Back-End", y muchas de las habilidades que necesitarás vendrán de fuera de las aulas universitarias.
- No obstante, intente encontrar programas de informática que cubran el mayor número posible de temas aplicables
- Consulte las biografías de los profesores del programa y conozca su trayectoria y sus premios
- Lea lo que dicen los alumnos y ex alumnos actuales, en el sitio web de la escuela y en otros lugares
- ¿Cuáles son las áreas de investigación financiadas por el programa y coinciden con sus intereses?
- ¿Con qué rapidez consiguen trabajo los graduados? Muchas escuelas se jactan de las estadísticas de inserción laboral
- Mira las tasas de aceptación, las ofertas en línea, los costes de matrícula, las oportunidades de becas, los clubes y organizaciones de estudiantes relacionados con las TI y los servicios de carrera.
- Asegúrese de que la institución está plenamente acreditada
¿Por qué no empiezas tu búsqueda con la lista de los mejores programas de informática de U.S. News & World Report de 2020? Lee sobre su metodología de clasificación para ver si sus criterios coinciden con las cosas que te importan. Cada estudiante tiene necesidades diferentes. Para la mayoría, el coste de la matrícula (o la posibilidad de obtener suficiente ayuda financiera) son factores importantes. Otros pueden tener que preocuparse también por su GPA y la competitividad de su paquete de solicitud. Muchos empleadores de Desarrolladores de Back-End se preocupan al menos tanto por tus habilidades prácticas y tu experiencia como por la escuela de la que procede tu diploma.
- Consigue toda la experiencia laboral que puedas. Las certificaciones y los cursos de formación quedan muy bien en el currículum, pero no hay nada mejor que la experiencia práctica que puedas demostrar
- Intenta conseguir unas prácticas, si es posible. Puede que no paguen mucho, pero hazlo lo mejor que puedas, desarrolla tus habilidades y pide una recomendación a tu supervisor.
- Entra en Upwork, Freelancer u otros sitios para adquirir experiencia trabajando con una amplia gama de clientes. Conseguirás práctica, opiniones y ganarás un dinero extra.
- Imprime algunas ofertas de trabajo de desarrollador de back-end de Indeed u otros sitios, y destaca las cualificaciones requeridas para los trabajos que deseas. A continuación, trabaja en esas habilidades.
- Consulte nuestra sección de Educación y Formación para ver los cursos que puede realizar en su tiempo libre
- Recuerda que las habilidades sociales también son importantes. Ofrécete como voluntario en los comités de la escuela o en actividades extracurriculares que te permitan desarrollar tus rasgos de liderazgo y gestión.
- Considerar la posibilidad de tomar clases de liderazgo del ROTC como estudiante no cadete
- Busca prácticas en portales de empleo o pide ayuda a tu programa universitario
- Únase a clubes relacionados con las tecnologías de la información, amplíe su red de contactos y aprenda todo lo que pueda de sus compañeros
- No se limite a leer, sino que estudie los artículos de desarrollo de Back-End y los boletines informativos
- Engancharse a un mentor dispuesto a enseñarle lo que hay que hacer
- Participar en los hilos de debate en línea, pero centrarse en el aprendizaje
- Lo primero que debes hacer es prepararte antes de que llegue el momento de buscar trabajo
- Haz el test de TripleByte y te pondrán en contacto con los empleadores si superas la prueba de selección
- Utiliza el centro de carreras de tu escuela. Obtenga ayuda con su currículum y sus habilidades para las entrevistas
- Haz una plantilla de currículum sólida y añade cosas a ella cada vez que adquieras una nueva experiencia o un nuevo logro. Utilízala como tu "copia maestra".
- Busca empleos en Indeed, Monster, ZipRecruiter, LinkedIn y Glassdoor
- Imprime los anuncios de trabajo y resalta las palabras y frases clave, y luego adapta una versión de tu currículum en copia maestra a ese anuncio exacto. Haz que un editor o un experto en currículos lo revise
- Si el empleador le permite enviar una carta de presentación, investigue la empresa y añada unas líneas sobre cómo sus valores e intereses coinciden con los suyos.
- ¡Corre la voz! Diga a su red que está buscando trabajo y haga un seguimiento frecuente
- Busque activamente ferias de empleo, conferencias y ferias comerciales específicas del sector frente a las ferias de empleo tradicionales que pueden no merecer su tiempo
- Echa un vistazo a los ejemplos de curriculum vitae de desarrolladores de Back-End de VelvetJobs
- Prepárate para esa entrevista revisando las 47 preguntas de entrevista para desarrolladores de back-end de FullStack en las que debes centrarte en 2020
- Se necesita tiempo para pasar de las funciones de nivel inicial a los puestos de trabajo de desarrollador senior de back-end
- ¡Hazte notar! Aprenda cosas nuevas, supere los cursos de formación y destaque en su trabajo
- Hable con su jefe sobre las oportunidades de promoción. La mejor fuente de información sobre promociones internas vendrá de dentro
- Más allá de los puestos superiores están el ingeniero de software principal, el arquitecto de software principal, el director de TI, el arquitecto jefe de TI, el director de ingeniería/desarrollo de software, el director de tecnología, etc. Estos puestos suelen requerir un máster y años de experiencia.
- La lealtad es importante para las empresas, pero las organizaciones pequeñas no ofrecen las mismas posibilidades de ascender. Si es necesario, busca en otra parte, pero mantén buenas relaciones con cada empleador.
- Formar a otros para que, cuando llegue el momento, puedas ascender y ellos asuman tus funciones
- Difunde tus conocimientos creando contenidos en línea, participando en organizaciones profesionales e incluso impartiendo una o dos clases.
Páginas web
- Apache
- Association for Computing Machinery
- Asociación de profesionales de la informática CompTIA
- Docker
- Github
- Google PageSpeed Insights
- Hashnode
- JavaScript
- Kubernetes
- Laragon
- MongoDB
- MySQL
- NGINX
- PHP
- Python
- Volver a encontrar
- Ruby
- Sourcetree
- Stack Overflow
- WampServer
- Organización Mundial de Webmasters
Libros
Las tareas de los desarrolladores de back-end pueden ser a veces ingratas. Las personas que aman la informática pueden no estar hechas para las tareas que requiere este campo. El artículo de Hackernoon "¿Deberías ser un desarrollador de back-end, front-end o full-stack?" puede ayudarte a decidir cuál de estas tres áreas podría ser la más adecuada para ti. Por otra parte, algunas carreras alternativas a considerar incluyen:
- Gestores de sistemas informáticos y de información
- Programadores informáticos
- Especialistas en soporte informático
- Analistas de sistemas informáticos
- Administradores de bases de datos
- DevOps
- Analistas de seguridad de la información