Antrian di backend: apa yang kita perjuangkan dan di mana kita memulai perjalanan?

gambar

Untuk semua orang yang tidak suka melakukan UI, "bernafas" antrian dan mimpi tentang API yang ideal, dalam edisi keempat podcast "Dry Oars", kami memanggil pengembang backend Andrey, Azat dan Anton.

Pengembang besi Redmadrobot, Artyom dan Roma, merekam podcast di mana, bersama dengan para tamu, mereka membahas berbagai aspek menciptakan produk-produk TI dan berbagi pengalaman mereka dalam digital. Dalam edisi # 4, fasilitator menemukan dari lawan bicara bagaimana jalan mereka ke backend dimulai, kerangka kerja apa yang harus mereka pilih, apakah mereka bermimpi tentang tata letak layar dan bagaimana menjelaskan kepada ibu mereka dengan siapa Anda bekerja.

Melampirkan podcast dan jawaban untuk beberapa pertanyaan yang membakar


Pengaturan waktu


01:27 - Bagaimana mereka datang ke pengembangan backend
10:33 - Apa yang menarik spesialis di backend
12:32 - Gangguan: Apakah Anda memerlukan pengetahuan mendalam tentang algoritma untuk mereka yang "menggergaji cookie"?
15:17 - Pertanyaan tentang penskalaan dan keamanan
16:23 - Apakah semua pengembang backend melakukan pekerjaan yang sama?
19:23 - Ruby on Rails, “sihirnya”, naik turun
24:23 - Bagaimana memilih platform?
28:06 - Mengapa mikroframe diperlukan dan bagaimana cara menggunakannya?
33:55 - Apa itu server asinkron dan mengapa diperlukan?
35:58 - Go: kesederhanaan dan arsitektur
41:46 - Postgresql bukan MySQL. Mengapa?
44:58 - Mengapa Anda perlu mempelajari Docker secepat mungkin dan mengapa Anda menginstal nginx?
50:49 - Pengembang ramah lingkungan: keterampilan minimum apa yang dibutuhkan lulusan universitas untuk mendapatkan pekerjaan?
1:04:21 - Buku terbaik tentang algoritme
1:09:33 - Apa yang perlu Anda ketahui dan apa yang tidak perlu Anda lakukan saat wawancara?
1:14:29 - Apakah Anda ingin mereka meninggalkan backend?
1:20:28 - Namun, apa yang tidak boleh dilakukan di tempat kerja dan mengapa "perlu berkomunikasi dengan orang-orang"?

Bagaimana bisa backend development?


Terlepas dari popularitas pengembangan ponsel, masih ada orang-orang yang lebih cantik daripada backend yang baik. Di antara mereka, tentu saja, adalah tamu kita.

Azat, misalnya, memberi tahu bagaimana ia tidak pergi ke pengembangan ponsel dan memutuskan bahwa akan lebih logis untuk terlibat dalam pengembangan web dalam arti luas. Namun kisah Anton terkait erat dengan Python.

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

backend...


... Kapan ada frontend super populer? Artyom mengingat banyak wawancara di mana pelamar mengatakan mengapa mereka ingin membangun karir dalam pengembangan ponsel. Hanya untuk kemudian memamerkan kesejukan aplikasi. Di backend, ini lebih rumit.

Tetapi pada kenyataannya, jika teman-teman dengan siapa Anda berbagi kegembiraan menciptakan backend mengerti dalam pengembangan IT, mereka akan memuji Anda. Tapi ibu bisa mengatakan apa yang server lakukan untuk aplikasi mobile toko, yang dia gunakan. Dan bahkan jika dia tidak sepenuhnya memahami apa itu server, ibu masih akan bangga.

Pro Pengembangan Backend


Azat menyarankan agar orang tertarik pada kenyataan bahwa tidak perlu memaksakan. Masih ada pendapat bahwa backend lebih sulit dan lebih dingin, walaupun untuk masing-masing, tentu saja, mereka sendiri. Setelah itu, orang-orang pergi ke pembicaraan tentang penskalaan dan keamanan. Lebih detail - dari 15:17.

Apakah semua pengembang backend melakukan satu pekerjaan?


Ini tidak benar. Tugas-tugas dalam pengembangan backend berbeda, dan mereka tidak bergantung pada bahasa atau platform, tetapi pada kebutuhan dan spesifikasi perusahaan, serta pada tingkat pengembang.

Terkadang pekerjaan mungkin untuk memperbaiki metode API yang ada atau membuat integrasi antara dua sistem pihak ketiga, tetapi di suatu tempat mungkin diperlukan untuk mengembangkan arsitektur sistem terdistribusi dari awal.

Python, Ruby, Go, C ++ dan semuanya


Orang-orang di studio mulai berbicara tentang cara memilih platform. Dan juga tentang fakta bahwa Ruby "masih hidup" (Roma baru-baru ini melihat buktinya), dan juga mengapa Anton mulai belajar Python, tentang nama-nama aneh dari pembuat bahasa pemrograman, kesederhanaan Go, mikroframe (ada banyak pembicaraan tentang mereka - dengarkan dari 28:06) , MySQL, Docker, server asinkron, dan rel ajaib.

Pengembang "hijau" dan keterampilan minimal untuk pelamar


Seberapa dalam, misalnya, seorang lulusan universitas perlu memahami backend untuk mendapatkan pekerjaan?

Selama diskusi, ternyata dia harus menjadi "pengguna PC yang percaya diri." Tapi serius, menurut Azat, seorang spesialis muda diharuskan memiliki keterampilan minimal dalam mengelola sistem unix - untuk mengetahui serangkaian perintah tertentu: cd, ls dan lain-lain.

Saya juga perlu memahami apa proses itu, apa hak aksesnya, apa sistem hak Linux itu, dan bagaimana jaringan beroperasi secara umum, bagaimana IPC (komunikasi antar proses), soket TCP berfungsi. Sudah cukup untuk memulai. Anda hanya perlu bisa memprogram. Inilah yang dikatakan anton:

Ada hal-hal dasar yang umum untuk setiap pengembangan, misalnya, untuk OOP (pemrograman berorientasi objek) ada aturan untuk menulis, merancang kelas. Jika ini adalah algoritma, Anda hanya perlu tahu bagaimana mereka dirancang, apa yang ada, pemrograman dinamis, dan "gunakan tumpukan di mana pun Anda bisa."

Dengan kata lain, sebagai permulaan, Anda tidak perlu menyelaminya dengan kepala.
Pemula tidak perlu tahu semua algoritma pengurutan yang ada. Tetapi pada saat yang sama, pertanyaan serupa terjadi pada wawancara. Ia diperlukan untuk melihat bagaimana seseorang berpikir dan solusi apa yang akan ia tawarkan.

Buku apa tentang algoritme yang layak dibaca


Andrew "tenggelam" untuk Stephen Skien dan "Algoritma" -nya. Pengembangan dan aplikasi. " Anton merekomendasikan sebuah buku karya Thomas Cormen, di mana "ada keseimbangan antara ketelitian, kejelasan dan kesederhanaan presentasi", dan "Cracking the Coding Wawancara" adalah panduan praktis yang baik untuk dengan cepat memahami algoritma.

Para tamu juga menyarankan "Seni Pemrograman" oleh Donald Knuth, yang disusun sebagai panduan untuk kompiler, tetapi menjadi "buku buku" yang nyata.

Pada akhirnya, backend - ya atau tidak?


Orang-orang sampai pada kesimpulan bahwa di semua bidang pengembangan web ada pro dan kontra. Dan ini normal. Jika Anda suka backend, algoritme, dan antrian, maka Anda harus memikirkan karier di dalamnya. Jika singkat. Jika Anda ingin mendengar alasan secara langsung, bergabunglah dengan podcast mulai 1:14:29.

Bahan yang berguna


Bagi yang ingin terjun ke Python, Anda bisa membaca:


Pilihan untuk REST Jedi di masa depan:



Masalah sebelumnya pada podcast Dry Oars


  1. Arsitek Perangkat Lunak: mengapa diperlukan dan apa kutukannya
  2. Sumber kebenaran: bagaimana seorang analis mengajar manajer dan pengembang untuk bekerja bersama
  3. CTO semua startup
  4. QA untuk pemula: cara menguji roket atau pesawat

Dengarkan kami di mana pun nyaman: Soundcloud , Apple , Google Podcast
Hindari membahas masalah ini dalam obrolan Telegram

All Articles