Cola en el backend: ¿qué estamos esperando y dónde comenzar nuestro viaje?

imagen

Para todos los que no les gusta hacer UI, "respira" colas y sueña con una API ideal, en el cuarto número del podcast "Dry Oars", llamamos a los desarrolladores de back-end Andrey, Azat y Anton.

Los desarrolladores de hierro de Redmadrobot, Artyom y Roma, graban un podcast donde, junto con los invitados, discuten varios aspectos de la creación de productos de TI y comparten sus experiencias en formato digital. En el número 4, los facilitadores descubrieron por los interlocutores cómo comenzó su camino hacia el backend, qué marco web deberían elegir, si sueñan con el diseño de las pantallas y cómo explicarle a su madre con quién trabaja.

Adjuntar un podcast y respuestas a varias preguntas candentes


Sincronización


01:27 - ¿Cómo llegan al desarrollo del backend?
10:33 - ¿Qué atrae a los especialistas en el backend
12:32?
15:17 - Preguntas sobre escalado y seguridad
16:23 - ¿Todos los desarrolladores de backend hacen el mismo trabajo?
19:23 - Ruby on Rails, su "magia", sube y baja
24:23 - ¿Cómo elegir una plataforma?
28:06 - ¿Por qué son necesarias las microframas y cómo trabajar con ellas?
33:55 - ¿Qué es un servidor asincrónico y por qué es necesario?
35:58 - Ir: simplicidad y arquitectura
41:46 - Postgresql en lugar de MySQL. ¿Por qué?
44:58 - ¿Por qué necesita aprender Docker lo más rápido posible y por qué debería instalar nginx?
50:49 - Desarrolladores ecológicos: ¿qué habilidades mínimas necesitan los graduados universitarios para conseguir un trabajo?
1:04:21 - Los mejores libros sobre algoritmos
1:09:33 - ¿Qué necesita saber y qué no necesita hacer en la entrevista?
1:14:29 - ¿Quieres que los chicos abandonen el backend?
1:20:28 - Y, sin embargo, ¿qué no se debe hacer en el trabajo y por qué "necesita comunicarse con la gente"?

¿Cómo es el desarrollo de backend?


A pesar de la popularidad del desarrollo móvil, todavía hay quienes son más bonitos que el viejo backend. Entre ellos, por supuesto, están nuestros invitados.

Azat, por ejemplo, contó cómo no fue al desarrollo móvil y decidió que sería más lógico participar en el desarrollo web en sentido amplio. Pero la historia de Anton está estrechamente relacionada con Python.

Python. , - «». , , - -, CMS’ — . . - , , - . , , . , , , . , , backend .

backend...


... ¿Cuándo hay una interfaz súper popular? Artyom recordó muchas entrevistas en las que los solicitantes dijeron por qué quieren desarrollar una carrera en el desarrollo móvil. Solo para luego mostrar la frescura de la aplicación. En el backend, esto es más complicado.

Pero, de hecho, si los amigos con quienes comparte la alegría de crear un backend entienden el desarrollo de TI, lo felicitarán. Pero mamá puede decir qué hizo el servidor para la aplicación móvil de la tienda, que usa. E incluso si no entiende completamente qué es un servidor, mamá todavía estará orgullosa.

Pros del desarrollo del backend


Azat sugirió que la gente se siente atraída por el hecho de que no hay necesidad de imponer. Todavía existe la opinión de que el backend es más duro y más frío, aunque para cada uno, por supuesto, el suyo. Después de eso, los chicos entraron en una conversación sobre escala y seguridad. Más detalles - a partir de las 15:17.

¿Todos los desarrolladores de backend hacen un solo trabajo?


Esto no es verdad. Las tareas en el desarrollo de backend son diferentes y no dependen del lenguaje o la plataforma, sino de las necesidades y detalles de la empresa, así como del nivel del desarrollador.

A veces, el trabajo puede ser refinar un método API existente o hacer la integración entre dos sistemas de terceros, pero en algún lugar puede ser necesario desarrollar una arquitectura de sistema distribuido desde cero.

Python, Ruby, Go, C ++ y todo-todo-todo


Los chicos del estudio comenzaron a hablar sobre cómo elegir una plataforma. Y también sobre el hecho de que Ruby está "todavía vivo" (Roma vio la prueba recientemente), y también sobre por qué Anton comenzó a aprender Python, sobre los nombres extraños de los creadores de lenguajes de programación, la simplicidad de Go, los microframes (se habló mucho de ellos, escuche de 28:06) , MySQL, Docker, servidores asincrónicos y raíles mágicos.

Desarrolladores "verdes" y habilidades mínimas para el solicitante


¿Qué tan profundo, por ejemplo, necesita un graduado universitario para entender el backend para conseguir un trabajo?

Durante la discusión, resultó que debería ser un "usuario de PC seguro". Pero en serio, según Azat, se requiere que un joven especialista tenga habilidades mínimas en la administración de sistemas unix, para conocer un cierto conjunto de comandos: cd, ls y otros.

También necesito entender qué es un proceso, qué son los derechos de acceso, qué es el sistema de derechos de Linux, y cómo funcionan las redes en general, cómo funcionan las conexiones IPC (comunicaciones entre procesos) y TCP. Eso es suficiente para empezar. Solo necesitas poder programar. Aquí está lo que dijo Anton:

Hay cosas básicas que son comunes a cualquier desarrollo, por ejemplo, para OOP (programación orientada a objetos) hay reglas para escribir, diseñar clases. Si se trata de algoritmos, solo necesita saber cómo están diseñados, qué hay allí, programación dinámica, bueno, y "usar la pila siempre que pueda".

En otras palabras, para empezar, no necesita sumergirse con la cabeza.
El principiante no necesita conocer todos los algoritmos de ordenamiento existentes. Pero al mismo tiempo, una pregunta similar ocurre en las entrevistas. Es necesario para ver cómo piensa una persona y qué solución ofrecerá.

¿Qué libros sobre algoritmos valen la pena leer?


Andrew "se ahogó" por Stephen Skien y sus "Algoritmos". Desarrollo y aplicación ". Anton recomendó un libro de Thomas Cormen, en el que "existe un equilibrio entre el rigor, la claridad y la simplicidad de la presentación", y "Cracking the Coding Interview" es una buena guía práctica para comprender rápidamente los algoritmos.

Los invitados también aconsejaron el "Arte de la programación" de Donald Knuth, que fue concebido como una guía para compiladores, pero que se convirtió en un verdadero "libro de libros".

Al final, backend, ¿sí o no?


Los chicos llegaron a la conclusión de que en todas las áreas del desarrollo web hay ventajas y desventajas. Y esto es normal. Si te gustan los backend, los algoritmos y las colas, entonces debes pensar en una carrera en él. Si brevemente. Si quieres escuchar el razonamiento en vivo, únete al podcast de 1:14:29.

Materiales utiles


Para aquellos que quieran sumergirse en Python, pueden leer:


Una selección para el futuro REST Jedi:



Ediciones anteriores del podcast Dry Oars


  1. Arquitecto de software: por qué es necesario y cuál es su maldición
  2. Fuente de la verdad: cómo un analista enseña a un gerente y un desarrollador a trabajar juntos
  3. CTO todo inicio
  4. Control de calidad para principiantes: cómo probar un cohete o avión

Escúchenos donde sea conveniente: Soundcloud , Apple , Google Podcasts
Evite discutir el tema en el chat de Telegram

All Articles