El desarrollo de una página web profesional involucra un conjunto de profesionales de distintos perfiles que van desde la captura de requerimientos hasta la puesta en marcha en un servidor de producción: Project Managers, diseñadores UX, diseñadores gráficos, maquetadores, desarrolladores, testers y SysAdminers. Hay un mundo de conocimientos detrás de cada perfil como así también de distintas son las herramientas que utilizan a diario para llevar su trabajo adelante. Vamos a conocer algunos detalles de cada uno de ellos para saber un poco más sobre su día a día, cuáles son sus responsabilidades dentro de un proyecto, las herramientas que utilizan y cómo hacen para mantenerse al día con las últimas tecnologías.
Diseñadores UX
Los diseñadores UX se encargan de que el usuario de una web o aplicación tenga una buena interacción con el producto o servicio mejorando su usabilidad y accesibilidad. Para cumplir con este objetivo analizan los distintos dispositivos donde se visualizará la web y diseñan posibles wireframes que luego utilizará el diseñador gráfico.
Es muy importante que tengan conocimientos varios sobre tecnologías de internet: CMS’s, frameworks, redes sociales, animaciones CSS o limitaciones de navegadores/dispositivos. Cuanto más recursos conozcan más herramientas tendrán para diseñar la posible usabilidad de una web o aplicación.

Herramientas
Diseñadores Gráficos
Es el encargado de diseñar la imagen general del proyecto (logotipo, web, email templates) utilizando los wireframes que generan los UX Designers, imágenes, tipografías y una paleta de colores que se ajusten al Look & Feel del cliente. En algunas ocasiones el diseñador gráfico hace también el trabajo de UX.
En los últimos años se ha visto un gran avance en las aplicaciones que utilizan los diseñadores para realizar su trabajo. Después de mucho tiempo de Photoshop o Illustrator han aparecido al mercado aplicaciones como Sketch (creo que fue una de las primeras que revolucionó el mercado), Zeplin o Framer que permite a los profesionales tocar algo de código para expandir sus diseños.

Herramientas
Maquetador de HTML5/CSS3
El maquetador es el encargado de convertir a HTML5, CSS3 y Javascript los mockups proporcionados por el diseñador gráfico. Es algo así como el Dr. Frankestein que da vida a lo que hasta entonces era una simple imagen estática. No es el responsable de la programación de la web, solo aplica la estructura básica (HTML, microformatos), la hoja de estilo y alguna que otra interacción con Javascript. Luego el programador cogerá este material para aplicar el código que completará la funcionalidad de la web.
Lenguajes
- HTML5
- CSS3: Es ideal conocer preprocesadores como LESS, SASS o PostCSS (aunque este último no sea un preprocesador cumple con la misma funcionalidad).
- Javascript: Se puede aprender alguna librería como jQuery (una de las más utilizadas en el desarrollo web).
Herramientas
- Navegadores: Web (Safari, Firefox, Chrome, Opera e Internet Explorer). En caso de trabajar no trabajar con el SO Windows podemos probar nuestras maquetas en Internet Explorer a través de una máquina virtual en nuestro entorno con Virtual Box o bien utilizar servicios como BrowserStack.
- Editor de texto: Sublime Text, WebStorm, Eclipse, Brackets, Coda o el cualquier otro IDE que prefiera el desarrollador.
- Aplicaciones para Preprocesadores: CodeKit o Koala.
- Automatizadores de tareas: Gulp o Grunt.
- Procesadores de imágenes: Sketch, Photoshop o GIMP.
- Chrome Dev Tools
Profesional Web – Darío Balbontín
Desarrollador Web
El desarrollador se encarga de aplicar el código de programación de servidor (PHP, Javascrtip, JAVA, .Net u otro lenguaje) y de Frontend (Javascript) para que la web cumpla con las funcionalidades de negocio: envíos de emails, gestión de pedidos, procesamiento de datos, consultas a base de datos, registros de usuarios, etc etc etc.
Si hablamos de un desarrollo de WordPress también se pueden incluir las tareas de instalación, creación o modificación de temas o plugins.
Este perfil debe trabajar en conjunto con el analista (persona que se encargó de desarrollar el alcance del proyecto), el maquetador y el tester. En algunas ocasiones el desarrollador web se encarga de todos estos perfiles a la vez (como es mi caso).
Un desarrollador web debe tener un amplio conocimiento de lenguajes y herramientas de desarrollo:
Lenguajes
Herramientas
- IDE: Sublime Text, Eclipse, Brackets, Coda, PHPStorm o Visual Studio
- Automatizador de tareas: Gulp o Grunt.
- Control de Versiones: Github, BitBucket.
- Integración Continua: Jenkins, Travis, BuddyWorks.
- Resolución de errores: Google, StackOverflow, Codex (para los proyectos WordPress).
Profesional Web – Pablo López
Desarrollador SEO
El desarrollador SEO se encarga de desarrollar o corregir el HTML para aplicar estrategias o trucos que mejoren el posicionamiento de la web en los buscadores como Google, Yahoo o Bing.
Herramientas
Profesional Web – Rafa Ramos
Project Manager
El Project Manager cumple un poco el rol de orquestador dentro del desarrollo de cualquier proyecto. Es el encargado de mantener las comunicaciones con el cliente y con el equipo técnico. Para ello debe tener buenas habilidades de comunicación, hacer un buen seguimiento de las distintas actividades y sobretodo prever posibles problemas para que el proyecto pueda seguir adelante sin retrasos en la planificación.
Herramientas
- Comunicación: Correo electrónico, llamadas telefónicas, Skype, Hangout, Slack, Zoom, Appear.in o similares.
- Calendarios: Google Calendar
- Diagramas de Gantt: Merlin, Gantter.
- Gestión de equipos: Asana, Trello, TeamWork.
- Estimación: Microsoft Project
Profesional – Javier Hernáiz
Conclusión
Como habréis visto hay muchos perfiles y roles detrás del desarrollo de una página web, de hecho faltan algunos que iré completando a medida que realice las distintas entrevistas. Si trabajamos en una empresa podemos especializarnos en uno de estos perfiles y si somos freelance tendremos que aprender, gestionar o delegar ciertas tareas. Supongo que habéis visto las imágenes de aquí abajo, representan típicos problemas cuando hay falta o mala comunicación entre los miembros del equipo de desarrollo. Y tú ¿Con qué herramientas trabajas? ¿Te especializas en alguna de ellas o eres un desarrollador «todo terreno»?