Fury Road: Perjalanan Pengembang Penagihan

Manajer perusahaan pengembang penagihan memiliki dua cara untuk membangun tim. Yang pertama adalah merekrut “senior” yang sudah siap dan terus menciptakan kondisi kerja agar mereka dapat menggunakan keterampilan dan pengalamannya secara maksimal, berkembang dan pada saat yang sama tidak terlibat perkelahian. Yang kedua adalah membentuk tim yang terdiri dari pendatang baru, menengah, dan profesional, sehingga mereka berkomunikasi, saling mempengaruhi, belajar, dan tumbuh dalam perusahaan. Saya menentang lingkaran setan ala “tidak ada pengalaman - tidak ada pekerjaan - tidak ada pengalaman” dan saya tidak melihat ada masalah dalam mempekerjakan pengembang pemula. Forward Telecom telah lama menjalankan program magang yang menjadi batu loncatan karir bagi banyak karyawan saat ini.

Sekarang saya akan memberi tahu Anda bagaimana saya melihat jalur pengembangan pengembang penagihan, dan dalam urutan apa Anda perlu menguasai keterampilan profesional.

1. Pelajari bahasa pemrograman

Sebagai permulaan, siapa pun. Prioritasnya adalah Java, Python dan JavaScript, tetapi Ruby, Go, C, C++ cocok untuk memperoleh pengetahuan dasar. Bagaimana cara mengajarnya? Ikuti kursus berbayar dan gratis; Saya dapat merekomendasikan pelatihan dari Golang. Jika tingkat bahasa Inggris Anda memungkinkan, menonton video asing adalah keterampilan tambahan yang bagus.

Fury Road: Perjalanan Pengembang Penagihan

2. Memahami konsep OS

Sistem operasi didasarkan pada tujuh komponen yang perlu Anda ketahui dan dapat menjelaskan prinsip pengoperasiannya:

  • Manajemen proses;
  • Utas dan kode multithread;
  • Soket (antarmuka perangkat lunak);
  • pengiriman I/O;
  • Virtualisasi;
  • Penyimpanan;
  • Sistem file.

Saya sarankan mengambil kursus dasar administrasi Linux. Sistem operasi kedua berturut-turut adalah Windows dan Unix.

3. Biasakan terminal

Jika dianalogikan dengan fobia lembaran kosong, ada fobia layar hitam kosong dengan kursor berkedip. Anda harus mengatasinya untuk mempelajari cara menulis perintah yang baik pada baris perintah.
Harus tahu:

  • Cangkang Bash dan KornShell;
  • Perintah find, grep, awk, sed, lsof;
  • Perintah jaringan nslookup dan netstat.

Fury Road: Perjalanan Pengembang Penagihan

4. Jaringan dan keamanan

Penagihan berkaitan erat dengan persyaratan perlindungan jaringan dan data. Anda tidak dapat menulis layanan online tanpa memahami cara kerja jaringan, jadi Anda perlu mempelajari konsep dasar dan protokol: DNS, model OSI, HTTP, HTTPS, FTP, SSL, TLS. Kemudian, ketika Anda mengalami kesalahan Koneksi Ditolak, Anda akan tahu apa yang harus dilakukan.

5. Server

Setelah mempelajari prinsip-prinsip transmisi informasi melalui jaringan, Anda dapat memulai dasar-dasar pengoperasian server. Mulailah dengan server web: IIS, Apache, Nginx, Caddy dan Tomcat.

Lebih jauh ke bawah daftar:

  • Proksi terbalik;
  • Proksi anonim;
  • cache;
  • Penyeimbang beban;
  • tembok api.

6. Pelajari infrastruktur sebagai kode

Saya percaya bahwa tahap ini adalah salah satu yang paling penting. Anda harus memahami tiga topik umum:

  • Kontainer: Docker dan Kubernetes
  • Alat manajemen konfigurasi: Ansible, Chef, Salt, dan Puppet
  • Cadangan: Terraform, awan.

7. Pelajari CI/CD

Keterampilan lain yang berguna bagi pengembang penagihan adalah mampu menyiapkan jalur untuk integrasi dan pengiriman berkelanjutan. Di area CI/CD terdapat tools seperti Jenkins, TeamCity, Drone, Circle CI dan lain-lain. Spoiler: mempelajari Jenkins yang banyak digunakan saja sudah cukup pada awalnya.

8. Pengendalian perangkat lunak dan infrastruktur

Tujuan utamanya adalah memahami dasar-dasar pemantauan aplikasi. Alat-alat di bidang ini dibagi menjadi tiga kelompok:

  • Pemantauan infrastruktur: Nagios, Icinga, Datadog, Zabbix, Monit.
  • Pemantauan kinerja aplikasi: AppDynanic, New Relic.
  • LMS: ELK Stack, Graylog, Splunk, Papertrail.

9. Layanan awan

Dalam waktu dekat, setiap aplikasi atau perangkat lunak akan memiliki versi cloud. Cepat atau lambat, pengembang akan menemukan cloud, jadi bacalah tentang penyedia cloud populer (AWS, Google Cloud, dan Azure) dan dasar-dasar teknologinya.

10. Bekerja dengan database

Semua proyek saat ini menggunakan database, dan pengalaman dengan DBMS dan SQL akan memudahkan untuk memulai. Pelajari cara menulis kueri SQL, gunakan penjelasan, dan pelajari cara kerja indeks. Cara termudah adalah dengan mengikuti kursus. Anda juga dapat melatih keterampilan dokumentasi Postgres dan bermain-main dengan replikasi.

11. Tingkatkan soft skill Anda

Suatu hal yang tidak terduga di luar kebiasaan, namun tidak kalah pentingnya. Untuk memulainya, bersabarlah. Anda dengan cepat terbiasa dengan situasi seperti "perbaiki perangkat keras Anda, Anda seorang programmer", tetapi Anda harus siap secara mental untuk tenggat waktu peluncuran proyek baru. Jika Anda berusia nol hingga satu tahun dalam pemrograman dan dianggap sebagai Junior, bersiaplah untuk kritik dan belajar menerimanya, peninjauan kode oleh seorang mentor sering kali merupakan proses yang menyakitkan. Namun pada saat yang sama, keterampilan yang wajib dimiliki adalah kemampuan mempertahankan sudut pandang dan berargumentasi secara konstruktif; terkadang kebenaran lahir dalam sebuah argumen. Developer tidak pernah berhenti belajar, praktis tidak ada batasan dalam profesinya, sehingga kemampuan belajar dan KEINGINAN untuk mempelajari hal baru adalah dasar dari perkembangan Anda.

Fury Road: Perjalanan Pengembang Penagihan

Saya sering ditanya kapan seorang pemula mencapai level menengah, dan kapan dia bisa dengan bangga disebut “senior”. Saya percaya bahwa momen transisi dari satu level ke level lain tidak ditentukan oleh jumlah tahun bekerja, meskipun keterampilan praktis adalah kriteria utamanya. Soft skill-lah yang sering menentukan kecepatan pertumbuhan seorang developer: seorang pemula yang terlatih dan pekerja keras dapat menulis kode berkualitas tinggi dalam beberapa bahasa dan dapat bekerja dalam tim hanya dalam beberapa bulan. Seorang pengembang dengan pengalaman 10 tahun mungkin tidak dapat memecahkan masalah non-standar, mengelola tim, dan memiliki keterampilan yang bersifat sepihak.

Beginilah cara saya melihat jalur pengembangan pengembang penagihan, inilah cara kami menumbuhkan spesialis yang memenuhi syarat di tim Forward Telecom kami. Sepertinya tidak ada yang terlewatkan, tapi saya selalu bersyukur atas tambahan yang bermanfaat.

Sumber: www.habr.com

Tambah komentar