Las transiciones dentro de los departamentos a veces se tratan de manera diferente. Alguien simplemente está más acostumbrado a ver cualquier cambio de carrera dentro de una empresa a través del prisma del crecimiento del empleo. Alguien no considera posible cambiar el alcance de la actividad, incluso si es adyacente al actual. Otros, en principio, están seguros de que la transición de un departamento a otro significa que una persona toma la posición de "ni pescado ni carne", y es poco probable que logre algo significativo.

Al mismo tiempo, algunos empleadores dan la bienvenida a esto y lo consideran algo así como un fusible contra el agotamiento: una persona cambiará su enfoque de atención, cambiará su departamento o departamento, pero no cambiará el trabajo en sí mismo en su conjunto.
Mi nombre es Kostya, y he estado trabajando en QIWI durante casi 4 años. Hoy les contaré cómo pasé con éxito del desarrollo frontend al backend.
Frontend
En QIWI, desde finales de 2014, comencé a trabajar como desarrollador de aplicaciones iOS y, en principio, he estado desarrollando una billetera QIWI durante un par de años. Al mismo tiempo, no puedo decir que fue aburrido: las tareas eran bastante diferentes dentro del marco de una aplicación: estábamos comprometidos en integrar la billetera con nuestros otros servicios, corregir errores, ajustar la animación. Además, hubo una experiencia interesante en la creación de una aplicación para el Apple Watch. Luego amplió su enfoque un poco y trabajó en la aplicación iOS para Conscience.

Y por ese tiempo, comencé a cambiar lentamente a retroceder. En términos de una metodología flexible, incluso es conveniente: cambié, en el primer sprint pude hacer algunas tareas en el backend, y en el segundo pude integrar la API, que escribí.
Pero en ese momento en el backend había muy pocos desarrolladores y un backlog demasiado pesado, así que al final todavía cambié completamente al backend. Lo que estoy haciendo ahora son las tareas clásicas del back-end: escribo código en nuestros microservicios, corrijo errores, realizo refactorizaciones y comprendo Kotlin. Existe la oportunidad de trabajar en un producto nuevo de la empresa: QIWI Investor.
Por cierto, no puedo decir que durante estos dos años logré endurecerme en el frente de alguna manera, me di cuenta claramente de que también hay espacio para el desarrollo allí. Por ejemplo, veo lo que está sucediendo ahora en el equipo de desarrollo móvil y entiendo que, si me hubiera quedado allí, continuaría creciendo más junto con los chicos.
Así que hubo una situación de ganar-ganar: quería ayudar al equipo y al producto (la ventaja en el desarrollo no estaba en la dirección del back-end) y obtener nuevos conocimientos. Los Timlids entendieron todo y me dejaron ir sin ninguna queja, el producto también.
Además, quería diversificar el conocimiento para no estar conectado a una plataforma (Android es un poco de mi agrado, pero Apple todavía está perdiendo terreno). Bueno, había un deseo, en cuyo caso, ser capaz de tomar y hacer una solicitud para usted (tanto al frente como al reverso), si de repente aparece alguna idea genial. Hasta ahora no ha sido útil, de verdad.
Backend

Por supuesto, el primer problema que encuentra durante una transición de este tipo es la falta de equipamiento. En mi caso, estas fueron algunas de las sutilezas de trabajar con bases de datos, pero tanto la capacidad de autoaprendizaje como el equipo ayudaron aquí: los chicos son receptivos y siempre están listos para ayudar y explicar algo en detalle. En QIWI, en principio, con entrenamiento en todas las etapas, todo está bien, ya sea que al menos sea un junior en el comienzo del trabajo, al menos decida y cambie la esfera un par de años después.
Nadie se molestó porque la primera vez que claramente estaba trabajando no era tan eficiente, porque tenía que moverme mucho (pero a la larga, el equipo aún ganó).
Por supuesto, antes de eso tenía un poco de experiencia en varios campos: juegos móviles y la web, pero todos estos eran intentos más probables de encontrar algo propio, en lugar de solo acumular experiencia práctica y seria.
Impresiones del backend después de la interfaz
No trabajar con UI. En general Anteriormente, tenía que matar el tiempo para corregir errores en la interfaz de usuario, ahora no lo es. Las desventajas de esta situación son que el usuario final no ve los resultados de mi trabajo específicamente, como fue el caso con el frente. Traté de determinar qué era más difícil: la parte posterior o la frontal, y me di cuenta de que (personalmente para mí) siempre era más difícil trabajar con subprocesos múltiples y la pila de red. Y aquí no es tan importante: ¿estás para el frente o para la parte de atrás? En el frente, me topé con esas tareas por primera vez, sin preparación, y en el backend ya tenía algún tipo de experiencia.
Puede adquirir experiencia y hacer algo genial en cualquier campo, sería un deseo y perseverancia, aquí convergen las prácticas: hacer algo (y hacerlo bien), y que funciona de manera confiable y se mantiene fácilmente. Además, para el back-end, la presencia o ausencia de experiencia en el frente no es tan crítica. Si el desarrollador tiene en cuenta todas las pequeñas cosas, él mismo piensa en los casos esquimales y, en general, comprende cómo se usarán sus API, entonces hará todo como debería sin conocimiento previo.
Es más fácil para mí detectar posibles problemas solo porque conozco las características de la implementación de nuestras aplicaciones móviles. Pero esto no es una especie de superpotencia: es un conjunto de conocimientos que cualquier backender que a menudo trabaja con frentes de una forma u otra.
Cual es el resultado
El desarrollo de backend se ha convertido en otra buena experiencia para mí: aprendí a escribir código y realizar revisiones, pensar en la arquitectura. Esto es realmente interesante.
Pero al mismo tiempo, después de haber tratado en vivo ese frente, ese respaldo, no diré que en ese caso elegiría inmediatamente un backend al comienzo de mi carrera. Todavía es importante para mí ver y comprender cómo los usuarios perciben mi producto. Con el backend, todo es bastante fantasmal.
Lo más probable es que, al elegir una esfera ahora, iría a un desarrollador de juegos o una interfaz web. La web sigue siendo una buena plataforma para lanzar nuevos productos, y al mismo tiempo ha dejado de ser espeluznante y difícil de entender. Afortunadamente, todos estos tutoriales del código de espagueti y el infierno de devolución de llamada están muy por detrás.