Transisi dalam departemen terkadang diperlakukan secara berbeda. Seseorang lebih terbiasa melihat perubahan karier dalam satu perusahaan melalui prisma pertumbuhan pekerjaan. Seseorang tidak menganggap itu mungkin untuk mengubah ruang lingkup kegiatan, bahkan jika berdekatan dengan kegiatan saat ini. Yang lain lagi, pada prinsipnya, yakin bahwa peralihan dari departemen ke departemen berarti bahwa seseorang mengambil posisi "bukan ikan, atau daging," dan tidak mungkin mencapai sesuatu yang berarti.

Pada saat yang sama, beberapa pengusaha dalam segala hal menyambut ini dan menganggapnya seperti sekering terhadap kejenuhan - seseorang akan mengubah fokus perhatiannya, mengubah departemen atau departemennya, tetapi tidak akan mengubah pekerjaan itu sendiri secara keseluruhan.
Nama saya Kostya, dan saya telah bekerja di QIWI selama hampir 4 tahun. Hari ini saya akan memberi tahu Anda bagaimana saya berhasil pindah dari pengembangan frontend ke backend.
Frontend
Di QIWI, sejak akhir 2014, saya mulai bekerja sebagai pengembang aplikasi iOS, dan, pada prinsipnya, saya telah mengembangkan dompet QIWI selama beberapa tahun. Pada saat yang sama, saya tidak bisa mengatakan itu membosankan - tugasnya sangat berbeda dalam aplikasi yang sama: kami terlibat dalam mengintegrasikan dompet dengan layanan kami yang lain, memperbaiki bug, dan memperketat animasi. Selain itu, ada pengalaman menarik dalam membuat aplikasi untuk Apple Watch. Kemudian ia sedikit memperluas fokusnya dan mengerjakan aplikasi iOS untuk Conscience.

Dan sekitar waktu itu, saya mulai perlahan beralih ke dukungan. Dalam hal metodologi yang fleksibel, bahkan lebih mudah - saya beralih, di sprint pertama saya bisa melakukan beberapa tugas di backend, dan yang kedua saya bisa mengintegrasikan API, yang saya tulis.
Tetapi pada saat itu di backend ada terlalu sedikit pengembang dan backlog yang terlalu besar, jadi pada akhirnya saya masih beralih ke backend sepenuhnya. Apa yang saya lakukan sekarang adalah tugas klasik dari back-end - saya menulis kode di layanan microser kami, memperbaiki bug, melakukan refactoring, memahami Kotlin. Ada peluang untuk mengerjakan produk baru perusahaan - Investor QIWI.
Ngomong-ngomong, saya tidak bisa mengatakan bahwa selama dua tahun ini saya entah bagaimana berhasil menjadi kaku di depan, saya dengan jelas menyadari bahwa ada juga ruang untuk pengembangan di sana. Sebagai contoh, saya melihat apa yang terjadi sekarang di tim pengembangan ponsel, dan saya mengerti bahwa, jika saya tetap di sana, saya akan terus tumbuh lebih jauh bersama dengan para pria.
Jadi ada situasi win-win - saya ingin membantu tim dan produk (keuntungan dalam pengembangan bukanlah arah back-end) dan mendapatkan pengetahuan baru. Timlids mengerti segalanya dan membiarkan saya pergi tanpa keluhan, produk juga.
Selain itu, saya ingin mendiversifikasi pengetahuan agar tidak melekat pada satu platform (Android sedikit sesuai dengan keinginan saya, tetapi Apple masih kehilangan kekuatan). Nah, ada keinginan, dalam hal ini, untuk dapat mengambil dan membuat aplikasi untuk diri sendiri (baik depan dan belakang), jika ada ide keren tiba-tiba muncul. Sejauh ini tidak berguna, sungguh.
Backend

Tentu saja, masalah pertama yang Anda temui selama transisi seperti itu adalah kesenjangan dalam peralatan. Dalam kasus saya, ini adalah beberapa seluk-beluk bekerja dengan database, tetapi kemampuan belajar mandiri dan tim membantu di sini - orang-orang responsif dan selalu siap membantu dan menjelaskan sesuatu secara rinci. Dalam QIWI, pada prinsipnya, dengan pelatihan di semua tahap, semuanya baik-baik saja, apakah Anda setidaknya seorang junior di awal pekerjaan, setidaknya memutuskan dan mengubah lingkungan beberapa tahun kemudian.
Tidak ada yang kesal karena pertama kali saya jelas bekerja tidak begitu efisien, karena saya harus banyak bergerak (tetapi dalam jangka panjang, tim masih menang).
Tentu saja, sebelum itu saya memiliki sedikit pengalaman di berbagai bidang - permainan ponsel dan web, tetapi ini semua lebih merupakan upaya untuk menemukan sesuatu dari saya sendiri, daripada hanya mengumpulkan pengalaman serius yang praktis.
Tayangan backend setelah frontend
Tidak bekerja dengan UI. Umumnya. Sebelumnya, saya harus menghabiskan waktu untuk memperbaiki bug di UI, sekarang tidak. Kerugian dari situasi ini adalah bahwa pengguna akhir tidak melihat hasil pekerjaan saya secara khusus, seperti halnya dengan bagian depan. Saya mencoba menentukan apa yang lebih sulit - bagian belakang atau depan, dan menyadari bahwa (secara pribadi untuk saya) selalu lebih sulit untuk bekerja dengan multithreading dan tumpukan jaringan. Dan ini tidak begitu penting - apakah Anda untuk depan atau belakang? Di depan, saya hanya menjalankan tugas-tugas seperti itu untuk pertama kalinya, tanpa persiapan, dan di backend saya sudah memiliki semacam pengalaman.
Anda dapat memperoleh pengalaman dan melakukan sesuatu yang keren di bidang apa pun, itu akan menjadi keinginan dan ketekunan, di sini praktiknya bertemu - untuk melakukan sesuatu (dan melakukannya dengan baik), dan itu bekerja dengan andal dan mudah dipelihara. Selain itu, untuk back-end, ada atau tidak adanya pengalaman di depan tidak begitu kritis. Jika pengembang memperhitungkan semua hal-hal kecil, ia berpikir sendiri, dan secara keseluruhan, memahami bagaimana API-nya akan digunakan, maka ia akan melakukan segalanya sebagaimana mestinya tanpa sepengetahuan depan.
Lebih mudah bagi saya untuk mendeteksi kemungkinan masalah hanya karena saya tahu fitur-fitur dari penerapan aplikasi mobile kami. Tapi ini bukan semacam negara adikuasa - itu adalah seperangkat pengetahuan bahwa setiap backender yang sering bekerja dengan front dalam satu atau lain cara.
Apa hasilnya
Pengembangan backend telah menjadi pengalaman yang baik bagi saya - saya belajar bagaimana menulis kode dan melakukan tinjauan, memikirkan arsitektur. Ini sebenarnya menarik.
Tetapi pada saat yang sama, setelah mencoba hidup di depan itu, dukungan itu, saya tidak akan mengatakan bahwa dalam hal ini saya akan segera memilih backend pada awal karir saya. Penting bagi saya untuk melihat dan memahami bagaimana pengguna memandang produk saya. Dengan backend, itu semua sangat hantu.
Kemungkinan besar, memilih bola sekarang, saya akan pergi ke pengembang game atau web frontend. Web masih merupakan platform yang baik untuk meluncurkan produk baru, dan pada saat yang sama tidak lagi menyeramkan dan sulit dipahami. Semua tutorial ini dari kode spaghetti dan callback-hell jauh di belakang, untungnya.