Contenidos
- 1. Introducción
- 2. Diferentes esferas de influencia: Front End VS. Back End
- 2.1. ¿Cómo funcionan los sitios web?
- 3. Un día en la vida de un desarrollador Front End
- 4. Un día en la vida de un desarrollador Back End
- 5. Las tecnologías que debes conocer
- 5.1. Caja de herramientas del desarrollador Front End
- 5.2. Caja de herramientas del desarrollador Back End
- 6. Diferentes especialidades para diversos intereses
- 7. ¿Cuánto me pagarán?
- 7.1. Salario de un desarrollador Front End
- 7.2. Salario de un desarrollador Back End
- 8. El Veredicto
- 8.1. Entonces, ¿Cuál debería elegir?
Introducción
No es ningún secreto que el desarrollo web ahora mismo es la profesión más popular del mundo. El problema es que los desarrolladores web están divididos en dos especialidades. Por lo tanto, entre front end y back end, ¿Cual es mejor?
La Oferta Activa más Reciente Ahora:
GET 50% OFF
DataCamp Black Friday Sale
During this DataCamp Black Friday, you can access the top-rated courses with a 50% discount. Enroll now for way less!
En este tutorial, encontraras todo lo que necesitas saber para tomar una decisión y tener éxito en tu nueva profesión; Una vez que comiences a trabajar. Hablaremos acerca de las tecnologías involucradas. Discutiremos el tipo de trabajo que harás. Describiremos las típicas tareas con las que tendrás que lidiar.
Diferentes esferas de influencia: Front End VS. Back End
Aunque ambos especialistas caen en el mismo término "Desarrolladores web", la verdad es que no importa qué lado elijas en el debate entre Front End Developer VS. Backend Developer, podría excluirse de trabajar en el otro lado permanentemente. A menos, que estés preparado para trabajar como desarrollador Full Stack.
Por lo tanto, Front End VS Back End y las responsabilidades de cada uno, ¡Comencemos!
Lo primero que deberemos averiguar al realizar una comparación entre front end developer y backend developer, es la especialidad que cada uno tiene. No es muy difícil por que las dos especialidades no son muy diferentes, teniendo en cuenta, que pertenecen al mismo campo.
¿Cómo funcionan los sitios web?
Para explicar cómo funcionan los sitios web, utilizamos como ejemplo uno muy popular. Amazon.com es perfecto para este propósito.
Imagínate que eres un usuario que quiere comprar un nuevo libro. Ves la barra de búsqueda, ingresamos el título del libro, das clic a la lupa y obtienes una lista.
Después, das clic al producto que desea, abres la página del producto, das clic en comprar, ingresas tus datos, eliges un método de envió y allí va el libro.
Suena sencillo, ¿Verdad? Es mucho más complicado de lo que parece.
¿Qué ha sucedido entre el front end developer y un backend developer?
Todo lo que ves en Amazon fue creado por un desarrollador front end. Los botones, la lista de productos, la página del producto, la pagina de cobro, todo.
Pero.
Todos estos elementos funcionan gracias al sistema creado por un desarrollador back end. Utilizas la barra de búsqueda creada por un desarrollador front end, pero los resultados son generados utilizando los algoritmos de búsqueda, almacenados en la base de datos que por cierto ha sido creada por un desarrollador back end.
Cuando tratas de hacer funcionar un sitio web, no se trata de un enfrentamiento entre front end developer vs. backend developer. Sino que, front end y back end, trabajan juntos.
En esencia, un desarrollador front end se encarga de todas las cosas que puedes ver en tu explorador web. En cambio, un desarrollador back end, es el encargado de crear sistemas de servidor, lo que prepara en cierta forma la estructura en la que trabaja un desarrollador front end.
Un día en la vida de un desarrollador Front End
Existe una mejor manera de hacerte a la idea de lo que significa ser un desarrollador front end y un desarrollador back end, ¿Que viviendo la vida de cada uno? Probablemente no.
Digamos que eres un desarrollador front end en una Compañía X. La cual es dueña de su propia tienda online de skateboard.
Esta compañía posee un equipo de diseñadores UI/UX, desarrolladores front end y back end, además de administradores de sistema.
Si perteneces al bando de los desarrolladores front end y back end, tu día comenzará, digamos, 9 AM. Irás a trabajar, te prepararías una taza de café e irías a una reunión con los diseñadores web para discutir sus últimas ideas acerca del nuevo y mejorado aspecto del sitio web.
Si fuera aprobado, deberías reconstruir el 60% del front end del sitio web. Sin embargo, al presentar este nuevo diseño, no puedes evitar estar emocionado.
Su nuevo diseño es totalmente receptivo, (Una característica que tu sitio web necesitaba desde hace un tiempo) Se ve mejor que cualquier otra cosa que hayas visto. Está repleto de animaciones, imágenes parallax. Va a resultar un desafío desarrollarla.
Este es el escenario de ensueño. En realidad, probablemente te sentirás algo molesto, ya que el diseño anterior funcionaba muy bien, se veía perfecto y este nuevo diseño te tomará meses de trabajo. Y a los programadores no les agrada el trabajo innecesario.
Un día en la vida de un desarrollador Back End
Ahora, analicemos este debate entre un front end developer vs backend developer desde una perspectiva distinta. Digamos, que eres un desarrollador back end en la misma compañía. Tu día comienza al mismo tiempo, te preparas una taza de café (Un expreso, nada de lattes para este muchacho) y luego te preparas para una reunión con el CTO de la compañía.
El dice que el sitio web del principal competidor tiene resultados de búsqueda más precisos y él mismo carga mucho más rápido. Discutes el problema y decides mejorar el algoritmo de búsqueda mientras agilizas los procesos del servidor para mejorar los tiempos de carga.
Ahora bien, es tiempo de dirigirte a tu bati-cueva y averiguar cómo hacerlo funcionar. No va hacer nada sencillo, pero estás determinado a realizarlo. Es un rompecabezas crítico para el éxito de la empresa. Amas resolver rompecabezas.
En el almuerzo, escuchas acerca de un nuevo diseño para la página web. Sugieres que todas las imágenes sean optimizadas de manera adecuada, pero no le prestas mucha atención. Mientras que no te impida mejorar los tiempos de carga del sitio web, no es tu problema.
Las tecnologías que debes conocer
Como hemos descubierto, realmente no se trata de un debate entre front end developer y backend developer. Ambas especialidad se supone deben complementarse entre ellas, permitiendo que el sitio web trabaje adecuadamente tanto del lado del cliente como del servidor.
Con una simple excepción, existe una clara diferencia entre herramientas y tecnología que utilizarán.
Caja de herramientas del desarrollador Front End
En primer lugar, analicemos las herramientas que utilizan los desarrolladores front end.
Las herramientas más apreciadas por un desarrollador front end son HTML, CSS y JavaScript. HTML, es un lenguaje utilizado para crear la estructura de un sitio web. CSS, es la manera de comunicarle al explorador web como se verá todo. JavaScript, es utilizado para añadir animaciones, transiciones y funciones a los elementos en pantalla.
Mientras que puedes crear un sitio web utilizando solamente HTML, CSS y JavaScript, esto resultara ser trabajo innecesario para un desarrollador front end.
Para ayudarlos, existen librerías y estructuras como Angular.js, React.js, BootStrap, etc. Las cuales agilizan el proceso y te permite reacomodar las herramientas de acuerdo a tus necesidades.
Dicho esto, debes crear todo desde cero antes de facilitarte el proceso con librerías y estructuras, al menos cuando estas recién aprendiendo. Estas librerías y estructuras, son una muleta que impactaran de manera negativa tu aprendizaje de JavaScript.
Si no utilizas muletas al comienzo, aprenderás mucho más. Las librerías y estructuras son muletas, que solo le facilitan el código a los principiantes pero convierten a los desarrolladores expertos en demonios de la velocidad. En una pelea, es mejor ser tanto rápido como fuerte. Lo mismo se aplica al desarrollo web.
Dicho esto, el sitio web de la Compañía X de skateboard, necesitará un montón de scripts para que funcione adecuadamente. Como un desarrolladores front end experimentado, deberás tener cuidado de ahorrar tu valioso tiempo y utilizar las bibliotecas como React.js y estructuras como Angular.js cuando sea apropiado.
Caja de herramientas del desarrollador Back End
Las herramientas que utiliza un desarrollador front end son relativamente sencillas. Este no es el caso con las herramientas de un desarrollador back end.
Lenguajes de programación del servidor
La elección de diferentes lenguajes de programación se trata de preferencia personal, las necesidades del proyecto y tu conocimiento. Existe una amplia variedad de lenguajes de programación para servidores como PHP, JavaScript utilizado en el entorno Node.js con la estructura Express, Python, Ruby, C#, Java y otros.
Las tecnologías utilizadas por un desarrollador back end, también pueden determinar el lenguaje de programación que utilizan. Por ejemplo, si tu sitio web ha sido creado bajo Symfony o Laravel, estarás más que forzado a utilizar código PHP. Para la estructura Django, Python tendría mucho más sentido, mientras que hacer uso de la estructura Express te forzará a utilizar Node.js.
Bases de datos
Existen dos tipos de bases de datos, relacional y no-relacional. La elección de la base de datos determinará qué sistema de base de datos utilizara tu proyecto e incluso el lenguaje de programación en el que será programado.
Existe una amplia variedad de sistemas de base de datos como MongoDB, MySQL, Oracle, Redis y otros.
Diferentes especialidades para diversos intereses
Fuera de las tecnologías involucradas y las diferentes responsabilidades, la elección entre convertirse en un desarrollador front end o back end, dependerá de tu personalidad.
Si la estética es importante para ti, deberás elegir convertirte en un desarrollador front end. Una gran parte de tu trabajo será enfocarte en el diseño y la comodidad de todos los aspectos que un usuario puede ver.
Un gran desarrollador front end, será capaz de comprender y participar en un design-fu. ¿Qué demonios es un design-fu? Es la variante del siglo 21 del Kung-Fu, donde los diseñadores toman un documento en blanco y lo convierten en un maravilloso sitio web.
Como anécdota, el desarrollo web front end es una excelente elección para aquellas personas que quisieron ser diseñadores en algún momento de sus vidas, pero nunca aprendieron a dibujar.
Por otro lado, el desarrollo back end, es completamente diferente. Lo único que les preocupa a los desarrolladores back end cuando se trata de la estética, es un código limpio y ordenado. Incluso esto puede ser olvidado ante una inminente fecha límite.
Algoritmos elegantes, soluciones inteligentes a problemas, esto es lo que capta la atención de un desarrollador back end.
Ahora, puede que parezca, que de alguna manera considerarías superior a un desarrollador back end. Este no es el caso en lo absoluto, ambas disciplinas son iguales, solo requieren de un set de habilidades y prioridades distintas.
Algunas personas poseen un talento natural para... aspectos visuales, mientras que otros les gusta averiguar cómo funcionan las cosas. No elijas tu especialidad de acuerdo a como suenan, ¡Este es uno de los mayores errores que podrías cometer!
Elige el trabajo que más te interese. Si no tiene nada que ver con el desarrollo, ¡Qué bien! No hay nada peor que pasarte todo el día trabajando con cosas que realmente odias, incluso si generas una fortuna.
¿Cuánto me pagarán?
Mientras que ambos desarrolladores web, son bien remunerados con respecto a los promedios nacionales alrededor del mundo, tu elección dependerá de igual manera en tus expectativas para ambas especialidades.
Echaremos un vistazo a los salarios promedios de un front end developer y backend developer respectivamente. Esto te permitirá comparar y elegir tu especialidad, si esto es lo que realmente te importa.
Salario de un desarrollador Front End
De acuerdo con glassdoor.com, el salario promedio de un desarrollador front end en Nueva York gira en torno a U$D111,728, 20% más que el salario promedio nacional. Esto puede ser explicado por el hecho de que Nueva York es una metrópolis con uno de los más altos costos de vida del mundo y un ecosistema empresarial en crecimiento.
En Londres, Reino Unido, el salario promedio anual de un desarrollador front end gira en torno a $52,000, 22% más alto que el promedio nacional, de acuerdo con glassdoor.com. Esto es significativamente menor a lo que podrías esperar en Nueva York, teniendo en cuenta que el costo de vida es prácticamente el mismo.
En India, el salario promedio anual gira en torno a $5000. Esto puede parecer como un robo, comparado con lo que podrías esperar ganar en Nueva York, aunque, ¡El costo de vida no puede ser comparado de ninguna manera con el de Nueva York!
Salario de un desarrollador Back End
En Nueva York el salario promedio de un desarrollador back end gira en torno a $133,182, 17% más alto que el promedio nacional. Como habrás notado, es significativamente más alto que el salario de un desarrollador front end.
En Londres, el salario de un desarrollador back end gira en torno a $74,000, 32% más que el promedio nacional. En India, puedes esperar un aumento significativo con respecto a lo que gana un desarrollador front end.
¿Sabías qué?
¿Alguna vez te has preguntado qué plataforma de aprendizaje en linea es adecuada para tu carrera?
El Veredicto
Si de dinero se tratase, el desarrollador back end es el campeón de esta batalla. Los desarrolladores back end ganan muchísimo más.
¿Por qué?
Porque el trabajo de un desarrollador back end implica mucha más responsabilidad. El error de un desarrollador back end podría costarle a la empresa mucho más que un error en la misma escala, cometido por un desarrollador front end.
Si un desarrollador back end dejará un error sería en el código, el sitio entero podría dejar de funcionar, podría ser hackeado, podría ser aprovechado por estafadores. Si un desarrollador front end comete un error, nada de esto pasaría, ya que no es el responsable de los servidores del sitio web.
- Fácil de usar
- Ofrece contenido de calidad
- Muy transparente con sus precios
- Certificados de completitud gratis
- Enfocado en habilidades de ciencia de datos
- Horario de aprendizaje flexible
- Diseño simple (sin información innecesaria)
- Cursos de alta calidad (incluso los gratuitos)
- Variedad de funciones
- Programas Nanodegree
- Ideal para empresas
- Certificados de pago al finalizar
- Bien establecido en la industria
- Una amplia gama de funciones a elegir
- Cursos de nivel universitario
- Cursos de nivel universitario
- Ideal para empresas
- Certificados de terminación de pago
Entonces, ¿Cuál debería elegir?
Con suerte, luego de haber leído este tutorial hayas adquirido una idea general acerca del debate entre front end developer y backend developer.
Si estás más interesado en la estética, antes que la configuración de sistemas complicados y algoritmos de computadora, entonces deberías elegir el camino de un desarrollador front end.
Esto no significa que es mucho más sencillo convertirse en un desarrollador front end. Para ser el mejor, deberás dominar numerosas estructuras y librerías. Te tomará un largo tiempo conocer lo suficiente para poder contribuir en grandes proyectos.
En cambio, un desarrollador back end lo tiene un poco más sencillo al comienzo. Asumiendo que sabes lo que tienes que hacer, la curva de aprendizaje es un poco más relajada. Esto se debe a que un desarrollador back end se especializa en campos limitados, mientras que un desarrollador front end debe conocer HTML, CSS y JavaScript.
Front End developer VS. Back End Developer. El escenario está preparado, las elecciones son claras. ¿Cuál de ellos elegirás?