¿Desarrolladores web necesitan saber algoritmos?

¿Los desarrolladores web necesitan saber algoritmos?

Hay miles de algoritmos diferentes para aprender, por lo que es importante comprender los más importantes para su función específica.

Pero, ¿es lo mismo para los roles menos técnicos o para los roles que no requieren la optimización de grandes conjuntos de datos?

En general, la mayoría de los desarrolladores web modernos necesitarán conocer algoritmos y estructuras de datos. El desarrollo web ha progresado durante la última década y se ha vuelto más técnico. Es probable que se le presenten algunos algoritmos durante la entrevista, por lo que para obtener un buen trabajo como web desarrollador recoger algunos algoritmos básicos.

Sin embargo, no siempre es tan claro.

Algunos roles de desarrollo no requerirán que conozcas ninguna estructura de datos ni algoritmos, y no los probarán en la entrevista.

Anteriormente hemos discutido si debe aprender algoritmos antes que un lenguaje de programación.

Pero ahora echemos un vistazo a por qué los desarrolladores web necesitan conocer los algoritmos y las circunstancias en las que no necesitarán dedicar tiempo a aprenderlos.

¿Los desarrolladores web necesitan conocer estructuras de datos y algoritmos?

Como desarrollador web, es una buena idea tener al menos una comprensión básica de las estructuras de datos y los algoritmos, ya que amplía su conocimiento técnico, lo ayuda a pensar de manera programática y agrega otro nivel a su cinturón cuando llega el momento de la entrevista.

Dicho esto, echemos un vistazo a las circunstancias en las que un desarrollador front-end puede no necesitar conocer algoritmos.

1. Dependiente del trabajo

Si aprendió HTML5 y tiene un trabajo que se enfoca principalmente en el lenguaje de marcado y CSS, entonces no tocará los algoritmos.

Ya sea que se trate de crear plantillas de correo electrónico o crear sitios web estáticos, HTML y CSS por sí solos no requerirán que piense de manera programática, por lo que no necesitará estructuras de datos o algoritmos.

Por otro lado, si su función requiere que realice solicitudes de API y obtenga grandes conjuntos de datos, es posible que deba profundizar en algunos algoritmos para la optimización.

Dicho esto, los frameworks modernos han abstraído una gran cantidad de trabajo de algoritmos.

React utiliza un algoritmo heurístico O (n) para su proceso de reconciliación, pero no es necesario que tenga un conocimiento profundo de cómo funciona el proceso paso a paso. lo suficientemente lejos.

2. Funciones y algoritmos

Se pone mucho peso detrás de la palabra algoritmo como si fuera algo que solo los programadores veteranos pueden crear.

La realidad es que si sabes cómo crear una función, lo más probable es que ya hayas creado un algoritmo.

Los algoritmos son ideas o conceptos que se pueden implementar en cualquier lenguaje de programación. Son solo un conjunto de instrucciones. Muchas funciones son implementaciones de algoritmos.

Muchos desarrolladores web habrán codificado un algoritmo sin saberlo. Ejemplos de algunos algoritmos JS comunes incluyen:

  • Palíndromo
  • Calculadora máxima de caracteres
  • Comprobador de anagramas
  • zumbido efervescente

3. Dependiente del producto

Si la empresa para la que trabaja es una agencia que produce una gran cantidad de sitios web, es probable que nunca utilice algoritmos. Ya sea que los esté codificando desde cero o utilizando un CMS como WordPress, la gran mayoría de los sitios web no requieren algoritmos. funcionar.

Muchos CMS tienen muchas optimizaciones y funciones de rendimiento integradas.

Entonces, si tiene la intención de crear algo desde cero, tenga en cuenta que tendrá que crear estas mejoras usted mismo y es posible que deba concentrarse en algunos algoritmos.

En los equipos que trabajan en productos más técnicos o aplicaciones web, los algoritmos pueden ser una parte más importante de su día a día, pero en general, dependerá de los requisitos de los productos en los que trabaje y de qué tan avanzados estén en el proceso de desarrollo.

4. Entrevistas

La razón número uno por la que los desarrolladores web necesitan saber algoritmos es por las entrevistas. No importa si eres el mejor programador del mundo, si no puedes pasar la etapa de la entrevista, no obtendrás el trabajo.

Use recursos en línea como Glassdoor para tener una idea del tipo de preguntas que le pueden hacer y concéntrese en cómo resolverlas.

La mayoría de los nuevos desarrolladores web deben repasar los algoritmos JS básicos antes de cualquier entrevista para que puedan responder cualquier pregunta que se les presente.

La mayoría de las empresas no esperan que tenga una comprensión profunda de cada algoritmo, pero querrán ver que conoce algunos conceptos.

Para los desarrolladores de JavaScript, he incluido una lista de las 40 preguntas de algoritmos más comunes al final del artículo.

5. Teoría vs Aplicación

Su trabajo como desarrollador web o ingeniero de software es resolver problemas. Los clientes acudirán a usted y necesitarán su habilidad para solucionar un problema comercial que tengan.

Resolver estos problemas requiere que piense analíticamente, divida los problemas en partes más pequeñas y elija la solución correcta para el problema correcto.

Debe sopesar y evaluar las soluciones que se ofrecen y tomar una decisión informada sobre la mejor manera de proceder.

En teoría, los desarrolladores web pueden necesitar conocer los algoritmos, pero la realidad puede ser muy diferente. No se deje atrapar tanto por aprender la teoría de los algoritmos que luego no pueda aplicarlos correctamente o utilizar una solución mejor.

6. Dependiente del problema

A veces React puede ser la mejor herramienta, otras veces puede ser Vue. Si la ingeniería de software es para usted, disfrutará evaluando cada opción y llegando a la mejor solución.

Cada tarea y proyecto tiene sus propias soluciones y cada problema requerirá un enfoque y un atributo ligeramente diferentes.

Muchos desarrolladores web adoptan un enfoque basado en problemas para aprender algoritmos, es decir, aprenden un algoritmo específico a medida que lo encuentran en un problema.

Sin embargo, no tiene sentido memorizarlos o usarlos fuera de un caso de uso específico, así que apréndalos solo cuando sea necesario.

Gran parte del trabajo pesado ha sido realizado por las herramientas que usamos todos los días. Por lo tanto, la mayoría de las soluciones ya existen. Asegúrese de investigar cómo otros han resuelto su problema antes de sumergirse y crear algo completamente hablado.

¿Qué importancia tienen las estructuras de datos y los algoritmos para los desarrolladores web?

Comprender si los desarrolladores necesitan conocer los algoritmos es una cosa, pero tener una idea de lo importantes que son para su carrera es otra.

Echemos un vistazo a por qué los desarrolladores necesitan saber al menos un poco sobre algoritmos y puede ayudarlo a seguir adelante.

Todo esto es un consejo general, como comentamos antes, cada trabajo y empresa requerirá cosas diferentes de sus empleados potenciales, asegúrese de hacer su tarea antes de aplicar.

Más oportunidades

Si la mayor parte de su trabajo se realiza en el front-end, se ocupa principalmente de la interfaz de usuario.

Usted se ocupa del aspecto visual del producto y es posible que no tenga que lidiar con grandes conjuntos de datos.

Sin embargo, si alguna vez desea pasar a un rol de interfaz más técnico, necesitará estas habilidades.

Dependiendo de su ubicación, estos trabajos más técnicos pueden incluso pagar más, por lo que, como desarrollador web, es muy importante aprender algoritmos para abrirse a nuevas oportunidades.

Si no se molesta en aprender sobre algoritmos, es posible que tenga dificultades para progresar en diferentes oportunidades de trabajo.Incluso tener una buena comprensión básica de ciertos algoritmos específicos del idioma puede ser suficiente para conseguirle un trabajo decente en el futuro.

Mejorando Habilidades

La vida como ingeniero de software se trata de la mejora continua. Debe seguir aprendiendo para mantenerse al día con el ritmo del cambio y mantenerse a la vanguardia.

La resolución de problemas y una mentalidad analítica son parte de eso.

Aprender algoritmos es importante para los desarrolladores web porque ayuda a ampliar su conocimiento y los hace más completos. No tiene que ser su pan y mantequilla, pero tener una idea marginal de cómo funcionan lo ayudará a mejorar sus habilidades.

Lentamente adquiere habilidades como desarrollador y tiene una caja de herramientas a la que puede acceder a medida que avanza el tiempo.Piense en las estructuras de datos y los algoritmos como otro elemento en su caja de herramientas.

Nunca se sabe cuándo pueden ser útiles y desea tener las habilidades para poder utilizarlas cuando lo sean.

Como desarrollador web que no sabe estas cosas, es posible que esté sobreviviendo en su trabajo y que lo esté haciendo bien, pero no sabe lo que se está perdiendo.

Iniciando en desarrollo web

Si usted es alguien que recién comienza como desarrollador web o todavía está en el camino del aprendizaje, es posible que los algoritmos no sean tan importantes para usted.

Obtener algunos proyectos personales en su haber, o completar un campo de entrenamiento va a mover la aguja mucho más que los algoritmos.

Cuando empiezas, lo más importante es obtener experiencia y desarrollar tus conocimientos básicos. Una vez que puedas codificar cómodamente en JavaScript o hayas descubierto qué partes de la ingeniería de software son más importantes para ti, entonces pasa a las estructuras de datos y los algoritmos.

Si intenta aprenderlos demasiado pronto, es posible que no tenga el conocimiento contextual para que todos tengan sentido.

Panorama desarrollo web cambiante

El panorama del desarrollo web ha cambiado significativamente. La mejora de las tecnologías web lo ha hecho mucho más posible en el navegador.

Los frameworks front-end también han revolucionado la forma en que construimos, mantenemos y mejoramos las aplicaciones.Los requisitos de un desarrollador front-end también han cambiado con el avance de la tecnología.

Si desea crear aplicaciones web o herramientas de desarrollo, comprender las estructuras de datos y los algoritmos es más importante que nunca.

Es posible que los desarrolladores frontend centrados en el diseño de la vieja escuela no los hayan encontrado útiles, pero el ingeniero moderno necesita al menos una breve comprensión de cómo funcionan.

Todavía puede llegar increíblemente lejos sin ellos, pero es probable que se encuentre con problemas de rendimiento en algún momento que requerirán que se sumerja. Los algoritmos lo ayudarán a encontrar formas eficientes de manejar una gran cantidad de datos.

¿Por qué los desarrolladores web necesitan estructuras de datos y algoritmos?

Como desarrolladores, tenemos una gran cantidad de herramientas increíbles a nuestra disposición. Siempre estamos buscando cosas que nos hagan la vida más fácil.

Parte de la razón por la que los desarrolladores web necesitan estructuras de datos y algoritmos es que facilitan ciertos aspectos de la programación.

Echemos un vistazo a algunos de los beneficios de usar algoritmos en nuestro código.

Velocidad

Google ha dejado muy claro que considera que la velocidad de la página es primordial para una experiencia de usuario positiva. Incluso han comenzado a derribar los sitios de las personas en el ranking si tienen una experiencia de usuario deficiente.

Si administra sus datos correctamente, su aplicación será ultrarrápida y es más probable que sea efectiva.

Por otro lado, la baja velocidad del sitio puede alejar a las personas de su producto o servicio y dar como resultado un resultado final más pequeño.

Capacidad de búsqueda

Con conjuntos de datos pequeños, la búsqueda no es tan difícil y difícilmente notará discrepancias o problemas.

Sin embargo, a medida que crece el grupo de objetos disponibles que se pueden buscar, también lo hacen sus dolores de cabeza.

Los desarrolladores web necesitan algoritmos para poder implementar funciones de búsqueda sólidas en sus aplicaciones. Sin ellos, los usuarios pueden pasar demasiado tiempo buscando lo que buscan o no encontrarlo en absoluto.

Vuelva a pensar en los foros más antiguos y en lo pobres que son sus funciones de búsqueda, lo que hace que toda la plataforma sea difícil de usar.

Rendimiento.

El rendimiento es el área en la que es probable que la mayoría de los desarrolladores web necesiten algoritmos.

Las aplicaciones que envían demasiadas solicitudes pueden terminar sobrecargando el servidor y provocando que se rompa.Si usa algo como Azure o AWS, estas solicitudes pueden volverse costosas y erosionarán sus ganancias.

A medida que las aplicaciones escalan, deben continuar funcionando tan bien como lo hicieron el día 1. Si su sitio web o aplicación fallan a medida que aumenta la base de usuarios, tendrá problemas a largo plazo.

Los algoritmos de rendimiento ahorran dolores de cabeza a los desarrolladores de backend y frontend al hacer uso de las estructuras de datos correctas en los momentos correctos.

Conclusión

En general, los desarrolladores web necesitan tener algún conocimiento de estructuras de datos y algoritmos. Los principiantes absolutos deben centrarse más en dominar el oficio aprendiendo un lenguaje de programación y construyendo cosas.

Pero a medida que avanza en su carrera de desarrollo web, las estructuras de datos y los algoritmos deben formar una parte importante de su caja de herramientas. Pueden abrirle oportunidades y se le preguntará sobre ellas en el momento de la entrevista, así que asegúrese de estar al tanto. !!

Aprende más de programación:

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top