A los fines de esta pregunta, supondré que un “experto” significa poder conseguir un trabajo principalmente debido a su conjunto de habilidades en esa área entre pares igualmente talentosos conocidos por su experiencia. Por ejemplo, usted es un desarrollador profesional de JavaScript contratado por una tienda JS, no solo un tipo que adquirió un código de front-end a través de w3schools.
Con ese fin, diría que la forma más sencilla de determinar la experiencia en HTML + CSS + JavaScript, en 2013, es ver si puede crear una aplicación web completa. Piensa en Gmail.
Esto implica una cantidad engañosamente grande de conocimiento, que incluye cosas como:
- ¿Qué herramientas y materiales se necesitan para el diseño web?
- ¿Qué CMS es el mejor para construir un sitio web de redes sociales de alta gama?
- ¿Qué pasos y procedimientos puedo agregar a un proceso de desarrollo web estándar que ayudará a desarrollar sitios que cumplan con ADA y la Sección 508?
- Cómo mostrar cada publicación en una categoría en una sola página de WordPress
- ¿Cuál es la mejor manera de definir una hoja de estilo específica de Chrome?
- Características HTML5, soporte, marcos, fallbacks
- Funciones CSS3, animaciones, diseños receptivos, compilación CSS, marcos
- Bibliotecas JS, orden de carga, compilación, técnicas de codificación y mejores prácticas.
- Posiblemente frameworks JS (digo posiblemente porque toma más de “He jugado con Backbone, y algunas personas realmente buenas de JS esencialmente han construido sus propios frameworks pero no han usado los comunes)
- Posiblemente herramientas de diseño, procesos de diseño.
- Administración del estado de la aplicación, administración del código, implementación de la aplicación, llamadas y recuperaciones de API (AJAX) e interacciones generales de servidor / cliente
Como puede ver, la experiencia debería ser más que simplemente trabajar en HTML, CSS y JavaScript; El ecosistema circundante y los puntos de contacto son cosas legítimas para saber, al menos parcialmente, y en la práctica son casi un hecho para los ingenieros de software que escriben mucho HTML / CSS / JS y lo hacen para ganarse la vida.
Crear una aplicación es una buena abstracción porque es lo suficientemente grande como para que su conocimiento de estas tecnologías vaya más allá de lo trivial; realmente no puede evitar copiar y pegar scripts en Google, debe lidiar con el estado agregado de una aplicación, y debe lidiar tanto con el diseño de complejidad adicional como con la escala de la cantidad de ingeniería para mantener la aplicación mantenible y rápido.
Lo bueno es que si cumple con estos requisitos, entonces, según la definición anterior, muchas compañías lo querrán. 🙂