¿Qué esperamos de un desarrollador Back-end? - Blog IDA Chile | Estrategia para el éxito de tu negocio
Nuevos profesionales digitales

¿Qué esperamos de un desarrollador Back-end?

El desarrollador Back-end es el responsable de la programación de un sitio web en todos sus componentes dinámicos ¿Qué habilidades y conocimientos debe tener para realizar bien este trabajo?

desarrollador dibujando en una pizarra

La evolución de las plataformas y herramientas para la creación de sitios web ha expandido las posibilidades del desarrollo, especializando sus partes y dividiendo las tareas principales del webmaster en dos grandes áreas: La interfaz visible para los usuarios y las configuraciones “backstage” de un proyecto web. En un artículo anterior les explicamos las características del desarrollador front-end, esta vez analizaremos las funciones del programador back-end.

Se trata de un profesional fundamental en los proyectos digitales, responsable de la programación de un sitio web y todos sus componentes, coordinando páginas, formularios, funcionalidades, bases de datos y servidores web, evitando problemas en las capas más profundas del proyecto. En su día a día trabaja con lenguajes del lado del servidor como PHP, Ruby, Python y con bases de dato relacionales del tipo SQL o no relacionales como MongoDB. Además, maneja JavaScript en el lado del browser, como un puente entre la interfaz y el motor del desarrollo, muchas veces con un framework como Zend o Cake o un CMS como WordPress o Drupal.

¿Qué habilidades debe tener?

Contrario a lo que se podría pensar, las habilidades del desarrollador back-end están más relacionadas con la lógica y el diseño de soluciones que con conocimientos técnicos. Para lograr un buen trabajo, el profesional debe tener:

Conocimientos técnicos:

  • Capacidad de abstracción lógica: Debe visualizar el inicio y final de acciones y plantear los recorridos posibles para luego determinar la estrategia más eficiente.
  • Conocimientos y capacidad de estudio de lenguajes: Estar constantemente estudiando PHP, Ruby, Python, Perl y/o JavaScript.
  • Manejo de al menos un CMS: Como por ejemplo WordPress o Drupal (en IDA nos inclinamos por el primero).
  • Manejo de al menos un Framework:  Como referencia tenemos Zend o Cake.
  • Conocimientos básicos de configuraciones de servidores web: Para poder adaptar elementos como la capacidad de memoria, la capacidad para subir archivos, el nivel de demanda e instalar librerías como APC (para el caché) y GD (para la manipulación de imágenes). Si bien no es imperativo, estos conocimientos son bien valorados.

Habilidades blandas:

  • Capacidad de escuchar y entender requerimientos del cliente: Debe identificar sus problemas y ofrecer soluciones, sin ponerle barreras. En IDA sabemos que todo es posible, tal vez sea difícil y involucre tiempos y costos distintos, pero partimos de la base de que estamos para ayudar a los clientes a llevar a cabo sus ideas, por muy complejas que sean.
  • Eficiencia y proactividad bajo presión: Al ser el último eslabón de la cadena, debe enfrentar todos los problemas derivados de las etapas anteriores, manteniendo una actitud analítica que le permita encontrar soluciones de forma ágil y creativa.
  • Capacidad para trabajar en equipos multidisciplinarios: Esto le permitirá entender y aportar en todos los procesos previos a su trabajo.
  • Habilidad de ser ordenado para trabajar: Tener el hábito de comentar el código, escribir manuales y trabajar con estándares, entendidos como acuerdos de los métodos definidos por los equipos para comunicarse con códigos y trabajar siguiendo la misma lógica.

Además, el desarrollador debe tener conocimientos sobre Node.Js, un intérprete JavaScript del lado del servidor que permite a los programadores construir aplicaciones altamente escalables. Esta es la nueva tendencia del desarrollo web, donde se mezcla la interfaz con el servidor, por lo que empieza a desaparecer la diferencia entre front-end y back-end.

¿Cuáles son sus responsabilidades?

Sus tareas no se limitan simplemente a las etapas finales del proyecto digital, el desarrollador debe participar en todas las etapas anteriores aportando con su perspectiva para evitar posibles problemas a futuro. Sus responsabilidades principales son:

  • Buscar todas las soluciones posibles a un problema, analizarlas y determinar la más efectiva y eficiente. En IDA tenemos la premisa que cuando se trata de problemas complejos, la primera solución que se encuentra es siempre la equivocada, sobre todo si se hace contra el tiempo.
  • Aplicar las mejores soluciones para programar acciones y funciones.
  • Mantener siempre una actitud de autoaprendizaje y actualización de conocimientos, estudiando los lenguajes de programación vigentes.
  • Indagar las necesidades de los clientes y ofrecer las mejores soluciones en forma de proyectos factibles.
  • Identificar problemas en la cadena productiva, analizando todos los procesos, para definir dónde se generó y cómo solucionarlo.
  • Proponer soluciones en etapas tempranas para evitar problemas.

Conclusión

Un buen desarrollador back-end entenderá, tal como dice WordPress, el código como poesía. Es decir, no se quedará con lo primero que encuentre, sino que estudiará y probará opciones para diseñar armoniosamente las soluciones que resuelvan de forma más efectiva y eficiente los problemas planteados.

Maximiliano Villegas - Director de Desarrollo
Director de Desarrollo
Investigo lo último en tecnología web, para ofrecer soluciones innovadoras en los proyectos. Encargado de resolver problemas de integración en diversas API's, servicios y plataformas que operamos. Me gustan los proyectos perfectamente terminados, con código bien estructurado, simple y legible.

Comentarios

arturo renteria

hace 4 años

¡Que tal Max! me gusto mucho tu articulo, muy preciso y simplificado. Ando buscando información con lo que respecta al back-end, ya que quiero tomar un curso sobre el mismo. Tengo una duda acerca de esta profesión y es ¿en un back-end cual son los conocimientos básicos o a fondo que debería tener de un front-end y de un administrador de bases de datos?

De antemano Max agradezco tu atención y te mando un saludo cordial.

Maximiliano Villegas - Director de Desarrollo

Max Villegas

hace 4 años

Para Base de Datos principalmente se necesita aprender lenguaje SQL, aunque hoy están de moda base de datos con lenguajes no relacionales como MongoDB y ahí ya necesitas saber node y mucho javascript.
Backend en general necesitas aprender lenguajes de programación como PHP, .NET, JAVA, C++, Ruby, Python, etc. JavaScript y frameworks simples com jQuery en el contexto de desarrollos de sitios es fundamental.
Hoy hay tendencias de desarrollos en fullstack como M.E.A.N donde saber nodejs es lo básico y donde la frontera entre back y front son más bien difusas.
En Front end es requisito mínimo el HTML5 y CSS.
Saludos!

Yickson Ramirez

hace 3 años

Excelente artículo, de igual forma se que uno tiene que estudiar todo lo que existe, así que les recomiendo trabajar con KumbiaPHP y en este momento VueJs es una maravilla para soluciones, de haber llegado a Chile antes hubiera postulado con ustedes para la vacante.

Angel Yocupicio

hace 2 años

Excelente explicación amigo Max, te felicito ampliamente por este post. 🙂