¿Qué hace el desarrollador front-end? ¿Qué tecnologías debería conocer y en qué aspectos de la aplicación web trabaja?

Un desarrollador front-end puede significar muchas cosas diferentes dependiendo de la compañía para la que trabajas, pero diría que la mayoría de los desarrolladores front-end hacen la mayor parte de su trabajo en la capa de vista de un MVC y pueden aventurarse en la capa del controlador también dependiendo del pila de aplicaciones

La capa de vista puede ser compleja debido a la naturaleza misma de las aplicaciones y dispositivos web modernos. Dado que el desarrollador front-end es responsable de presentar una vista coherente en todos los dispositivos y navegadores, es importante tener la capacidad de depurar en todos los navegadores y dispositivos diferentes, al igual que los principios de diseño receptivo.

En su mayor parte, diría que los desarrolladores front-end pasan mucho tiempo traduciendo maquetas de diseño en HTML y CSS y luego agregando interactividad, que podrían ser cosas como animaciones de UI, menús desplegables, etc., con JS. En el caso de que esté trabajando en aplicaciones y no en sitios, puede ser responsable de conectar los elementos de la interfaz de usuario a las API creadas por un desarrollador de back-end utilizando Angular o jQuery para enviar / extraer datos de la aplicación. En este caso, puede tomar un poco más de propiedad de la capa de controlador (C en MVC) ya que parte del procesamiento o validación de datos puede ocurrir en el cliente o en el front-end.

Debe tener tecnologías para un desarrollador front-end

HTML 5, CSS 3, JavaScript, jQuery, Bootstrap / Foundation, herramientas de desarrollo (Chrome, Firebug, Web Inspector) y quizás un marco JS como Angular, Ember, Backbone o Knockout.

Es bueno tener tecnologías

Cualquiera de los marcos JS (Angular, React, Ember, Knockout, Backbone, etc.). SASS / LESS, Grunt, Gulp

Cosas que te distinguirán

Node.js, PHP, Python, C # o cualquier lenguaje “back end”. Aunque es posible que no lo use a diario, conocerlo lo suficiente como para colaborar con otros desarrolladores lo convertirá en una mejor opción.

Bases de datos SQL y no SQL por el mismo motivo que el anterior.

Experiencia MVC. A menos que solo desee crear sitios web estereotipados, sepa lo que esto significa arquitectónicamente y pueda articular por qué es importante y cómo encaja en él.

Hacemos que los sitios web se vean bonitos. . .y también funcionan.

Honestamente, la línea entre “front end” y “back end” se ha desdibujado a lo largo de los años: me considero “full stack”, aunque en mi posición actual escribo principalmente código HTML, CSS y JavaScript, que se considera ‘front’ fin’. También escribo código PhP, SQL y Node / Express cuando se me solicita.

Los desarrolladores front-end suelen ser los responsables de hacer que un sitio se vea mejor en todas las situaciones, navegadores y dispositivos. Puede que no seamos los que ideamos el concepto de diseño (a veces lo somos), pero somos los que lo hacemos realidad.

También podríamos tener que hacer alguna lógica compleja a veces usando JavaScript y AJAX para hacer que las cosas sean más receptivas para el usuario también (por lo que no todo es artístico-fartsy …).

También debemos ser responsables del contenido y del rendimiento del sitio desde la perspectiva de los usuarios. Si bien el rendimiento es una tarea tanto de back-end como de front-end, cosas como usar imágenes correctamente (usando sprites, imágenes receptivas, etc.), escribir bien CSS, HTML y JavaScript también entran en juego.

Les digo a mis alumnos que si quieren ser buenos programadores de front end, aprendan lo siguiente:

– HTML: no solo la versión 5, sino que también sabe cómo escribir código compatible con versiones anteriores. A veces tenemos que admitir IE8 y versiones posteriores que no entienden algunas de las etiquetas / conceptos HTML5.

– CSS, de nuevo, igual que con HTML, sabiendo qué funciona y qué no funciona en los navegadores y cómo hacer un diseño receptivo.

– JavaScript – JavaScript es muy popular en estos días, pero ha estado presente en el desarrollo web front-end desde el primer día. Si eres muy bueno con JavaScript, ahora tienes mucha demanda.

También quisiera que un desarrollador de Font-End conozca algunos conceptos de diseño gráfico y también lea sobre la usabilidad web (Jakob Nielsen debería ser una lectura obligatoria para los diseñadores / desarrolladores front-end).

Y conocer los conceptos del back-end tampoco sería algo malo. Cuanto más pueda contribuir a un equipo de desarrollo web, más valioso será. Las líneas de front-end y back-end a veces se desdibujan, por lo que es bueno poder hacer ambas cosas cuando se le solicita.

Un desarrollador front-end trabaja en el aspecto de vista de la aplicación. Lo que ves en un sitio o aplicación es lo que hace el desarrollador front-end y lo que sucede en la parte posterior son trabajos de middleware y backend.

Un desarrollador front-end básicamente debería conocer html y estar familiarizado con muchos frameworks como bootstrap, angular, etc.

Haría lo siguiente para averiguar las tareas exactas / regimiento diario para un desarrollador front-end:

Vaya a cualquier sitio web que ofrezca ofertas de trabajo ( craigslist , trabajos auténticos , de hecho ). Mire los requisitos que se les solicitan a los posibles desarrolladores, así como las cualidades preferidas . No solo tendrá su respuesta, sino también las especificaciones exactas de lo que debe saber cuando se haya convertido en un experto.

No pierdas el tiempo escuchando lo que la gente “piensa” que debes saber … ve a la fuente .