5 poin oleh GN⁺ 2024-04-22 | 1 komentar | Bagikan ke WhatsApp
  • Pedro David Garcia Lopez berasal dari Spanyol dan pindah ke Inggris pada 2015 untuk bekerja sebagai sopir truk, lalu pada usia 38 tahun mengubah kariernya menjadi developer Ruby on Rails
  • Saat masih menjadi sopir, ia biasanya hanya berada di rumah 4–6 hari dalam sebulan, sehingga sulit menyediakan waktu belajar yang konsisten di antara peran keluarga dan jam kerja yang panjang
  • Mulai September 2019, ia menetapkan target menjadi developer dalam 1 tahun; setelah belajar Python dan mengikuti kursus Udemy, ia mempelajari Ruby, Sinatra, Rails, React di bootcamp Flatiron School
  • Pada 2020, di tengah situasi COVID, ia harus mencari pekerjaan developer pertamanya; setelah berbulan-bulan tidak mendapat panggilan wawancara, ia menerima peluang pertama di Manchester meski dengan gaji rendah dan perjalanan pulang-pergi yang panjang
  • Kini ia sangat menghargai produktivitas dan kesenangan yang diberikan Ruby dan Rails, serta menyarankan programmer baru untuk tidak mengejar semuanya, melainkan fokus pada cara belajar, bertanya, dan mencari mentor

Jalur dari Sopir Truk Menjadi Developer

  • Pedro David Garcia Lopez adalah pria Spanyol berusia 42 tahun yang pindah ke Inggris pada 2015, dan berencana kembali ke Spanyol agar bisa lebih dekat dengan keluarganya
  • Ia datang ke Inggris pada 2015 sebagai sopir truk, dengan alasan ingin memberi putrinya peluang baru dan mempelajari bahasa Inggris dengan baik
  • Saat bekerja sebagai sopir, ia bepergian ke berbagai tempat di Inggris dan Eropa, dan biasanya hanya berada di rumah sekitar 4–6 hari dalam sebulan
  • Sebagai sopir profesional, ia telah mengemudikan hampir semua jenis kendaraan di jalan, mengunjungi negara-negara daratan Uni Eropa setidaknya sekali, dan menempuh jarak dengan truk yang cukup untuk mengelilingi bumi beberapa kali

Ketertarikan pada Komputer dan Kegagalan Belajar Awal

  • Pertama kali ia mengenal komputer adalah sekitar usia 12 tahun dalam kelas mengetik musim panas; ia terpikat pada komputer saat menggunakan MS-DOS atau Windows 3.1
  • Setelah ayahnya meninggal saat ia berusia 14 tahun, ia harus belajar sambil membantu menafkahi keluarga, sehingga hampir mustahil memiliki komputer di rumah
  • Pada usia 18 tahun, saat bekerja penuh waktu, ia menabung selama 3 bulan untuk membeli komputer pertamanya, Pentium II, dan sejak saat itu ia ingin belajar pemrograman
  • Ia memulai dengan buku C++, tetapi isinya terlalu teknis dan sulit sehingga ia tidak bisa membuat sesuatu yang menarik; setelah itu, tuntutan hidup membuatnya tidak dapat mendalami pemrograman

Keputusan untuk Menjadi Developer dalam 1 Tahun

  • Seiring kemampuan bahasa Inggrisnya membaik dan akses ke informasi online menjadi lebih mudah, ia kembali teringat pada impian masa kecilnya untuk menjadi developer
  • Ia mengikuti pelajaran HTML, CSS, dan JavaScript di YouTube, serta mencoba kursus semacam “menjadi programmer dalam 7 hari”
  • freeCodeCamp lebih terstruktur dan serius, tetapi jam kerja sopir truk yang panjang serta perannya sebagai ayah dan suami membuatnya sulit mencapai tempo belajar yang memadai
  • Setelah lama bekerja sebagai sopir dan mengurus keluarga, ia membuat rencana untuk meninggalkan pekerjaan yang stabil dan menjadi developer dalam 1 tahun atau menyerah
  • Ia mulai serius pada September 2019, mempelajari dasar-dasar lewat Python dan kursus Udemy, tetapi meski bisa mengikuti instruksi, ia belum mendapatkan keyakinan bahwa ia bisa membuat sesuatu sendiri

Flatiron School dan Pekerjaan Pertama

  • Setelah meninjau berbagai opsi, ia masuk ke Flatiron School
    • Ia merasa risikonya kecil karena syaratnya, jika tidak mendapatkan pekerjaan setelah menyelesaikan program, ia tidak perlu membayar biayanya
  • Di bootcamp, ia belajar secara terstruktur mulai dari dasar Ruby hingga Sinatra, Ruby on Rails, dan React
  • Melalui guru, rekan, tugas, dan latihan, ia mampu melampaui level sekadar mengikuti instruksi dan mulai bisa membuat hal-hal baru
  • Ia menyelesaikan program pada akhir Mei 2020, dan mendapatkan perasaan bahwa ia bisa menemukan serta menyelesaikan masalah sendiri dan mempelajari hal baru
  • Saat ia lulus, situasinya adalah masa COVID, dan karena lockdown, peluang untuk wawancara atau terhubung dengan orang lain sangat sedikit
  • Dengan status sebagai lulusan bootcamp berusia 38 tahun tanpa pengalaman kerja, ia tidak mendapat panggilan wawancara selama berbulan-bulan dan merasa khawatir apakah CV-nya langsung dibuang
  • Peluang pertama datang dari Manchester, berjarak 2 jam dengan kereta dari rumahnya, dan tidak memiliki kebijakan kerja dari rumah
    • Gajinya sekitar sepertiga dari saat ia menjadi sopir truk, dan sebagian besar habis untuk biaya kereta
    • Stack teknologinya adalah PHP dan jQuery, tetapi ia menerima tawaran itu karena merasa harus memulai sebagai developer

Penilaian terhadap Ruby dan Rails

  • Ia pertama kali mengenal Ruby dan Rails di bootcamp, lalu mendapatkan lebih banyak pengalaman saat bekerja di Superbyte
  • Di Superbyte, mereka menggunakan stack yang tidak standar, termasuk Mongoid dan sebagian React, tetapi ia belajar banyak dari timnya
  • Setelah mendapatkan pengalaman profesional dengan Ruby on Rails, kecintaannya bertambah, dan ia menilai banyak hal menjadi lebih mudah jika sudah terbiasa dengan konvensi Rails
  • Sebagai daya tarik Ruby dan Rails, ia menyebut komunitas serta ekosistem yang terus berkembang
  • Ia menantikan untuk beralih dari React dan menerima ekosistem Hotwire, serta menilai positif bahwa banyak hal dapat ditangani dengan cara Rails

Buku, Panutan, dan Cara Belajar

  • Ia mulai membaca buku teknis di fase lebih lanjut kariernya setelah merasakan berbagai kekurangan, dan merasa masih banyak buku yang perlu ia baca
  • Buku yang berkesan baginya adalah sebagai berikut
  • Ia menghormati orang-orang yang mahir dalam pemrograman dan memiliki semangat, serta mereka yang membagikan pengetahuan
  • Ia menyebut Quincy Larson, freeCodeCamp, dan para pembuat konten sebagai pihak yang ia syukuri
  • Avi Flombaum, yang merupakan pengajar di Flatiron School, juga menjadi sosok yang ia ingat, dan ia merasa orang-orang yang pernah bekerja bersamanya membantu pertumbuhannya sebagai developer dan sebagai manusia

Cara Kerja dan Alat Saat Ini

  • Dalam kariernya yang masih singkat, ia telah mengalami kerja sepenuhnya remote, hybrid, dan bekerja di kantor 5 hari seminggu
  • Seiring rencananya kembali ke Spanyol, mulai pertengahan April ia akan pindah ke peran sepenuhnya remote di gocertify
  • Di Superbyte, ia beralih dari Junior Developer ke peran yang lebih mendekati semi-senior, serta terlibat dalam penulisan kode, desain konsep, dan sebagian R&D
  • Sebagian besar waktunya digunakan untuk menulis kode, tetapi ia juga menikmati pair programming dan review PR
  • Ia memandang mengajar sebagai cara terbaik untuk mempelajari konsep, dan senang mengusulkan pendekatan kepada rekan kerja atau belajar dari mereka
  • Alat yang sering ia gunakan adalah sebagai berikut
    • Editor kode: VS Code
    • GUI database: MongoDB Compass
    • Terminal: iTerm with oh my zsh
    • Browser: Chrome
    • Catatan dan manajemen proyek: Apple Notes, VS Code Markdown, GitHub projects/issues
    • Komunikasi: Microsoft Teams

Saran untuk Programmer Baru

  • Saran terpentingnya adalah belajarlah cara belajar
  • Karena setiap orang punya cara berbeda untuk belajar dan mengingat, perlu menemukan metode belajar yang cocok untuk diri sendiri
  • Pedro belajar dengan membuat sendiri atau menonton tutorial lalu mereplikasinya, kemudian mengembangkannya lebih jauh ke area yang ia minati
  • Untuk buku, ia awalnya membaca tanpa coding, lalu saat membaca ulang menggunakannya sebagai panduan, bukan sekadar diikuti langkah demi langkah
  • Tidak perlu merasa harus mempelajari semuanya; fokus pada satu hal yang disukai bisa membawa lebih jauh daripada mempelajari terlalu banyak hal secara dangkal
  • Untuk programmer baru, ia menyarankan agar bekerja keras dan berani bertanya
    • Menurutnya, pertanyaan paling bodoh adalah pertanyaan yang tidak diajukan
    • Ia mengatakan agar jangan merasa diri tidak cukup baik atau tahu terlalu sedikit
  • Ia merekomendasikan Ruby dan Rails karena setelah melewati titik balik, keduanya bisa terasa mudah dan menyenangkan
  • Mencari mentor atau seseorang yang dapat membantu pertumbuhan juga baik, dan ia menyarankan First Ruby Friend sebagai sumber bagi pembelajar Ruby
  • Sebagai kanal kontak, ia memiliki LinkedIn dan Twitter/X, serta berencana membangun ulang www.lorrydriveloper.com dengan Ruby on Rails setelah situs pribadi Django lamanya tidak aktif

1 komentar

 
GN⁺ 2024-04-22
Komentar Hacker News
  • Di Inggris, saya justru beralih dari pengembang (terutama C#) menjadi pengemudi truk barang
    Sekarang saya mengemudikan mulai dari truk rigid 12 ton sampai trailer besar 44 ton, dan di waktu luang mengembangkan dengan RoR dan Golang terasa lebih menyenangkan daripada saat dibayar untuk mengembangkan perangkat lunak
    Jam kerja mingguan naik dari 38–40 jam menjadi rata-rata 50–52 jam, tetapi mengemudi HGV jauh lebih baik imbalannya dibanding saat menjadi pengembang. Meski begitu, ini mungkin lebih mencerminkan kemampuan atau level saya sebagai pengembang

    • Orang Amerika juga perlu tahu bahwa kompensasi pengembang di luar AS umumnya seperti ini. Pengembang biasanya dibayar cukup untuk hidup, tetapi bukan gaji yang luar biasa tinggi
      Ada pengecualian, tetapi harus melewati wawancara yang sulit, dan di sini tidak ada yang namanya magang dengan total kompensasi 200 ribu dolar
      Karena itu, pilihan seperti belajar keterampilan teknis, menjadi scrum master, atau pekerjaan terkait transportasi juga menjadi alternatif yang realistis. Pengembang terjebak dalam stagflasi, dan misalnya membeli rumah dalam jarak komuter 90 menit dari wilayah metropolitan Sydney sulit bagi kebanyakan pengembang sekalipun. Dalam 15 tahun, harga rumah naik tiga kali lipat, tetapi gaji pengembang atau tarif kontrak tidak naik sebesar itu
    • Cerita seperti ini bagus karena mengingatkan bahwa tidak pernah terlambat untuk memulai perubahan hidup yang cocok bagi diri sendiri
      Sebagian orang bertahan pada hal yang sudah akrab dan takut perubahan besar, tetapi ketidaknyamanan sementara bisa berujung pada kepuasan yang lebih besar dalam jangka panjang. Entah masuk atau keluar dari pekerjaan mengemudi truk barang, atau pekerjaan apa pun, teruslah bercerita; itu bisa menginspirasi seseorang yang sedang mengalami burnout dan kekecewaan
    • Rasanya cukup wajar kalau proyek coding pribadi jauh lebih menyenangkan daripada saat bekerja
      Ketika pekerjaan dan hobi sama, perbedaan besarnya adalah tidak ada atasan selain diri sendiri
    • Menarik. Saya penasaran apakah mengemudi truk barang itu menyenangkan
      Dulu saya pernah memikirkannya, tetapi khawatir pada situasi saat harus bermanuver di pusat desa kecil di pedesaan. Di desa tempat saya tinggal, rumah-rumah cukup sering tertabrak. Saya penasaran apakah kejadian seperti itu sering, apakah ada banyak tekanan jadwal pengiriman yang sangat ketat, dan berapa lama untuk mendapatkan SIM HGV
    • Itu lebih menunjukkan kondisi Inggris daripada kemampuan pengembangan. Pengembang di Inggris umumnya dibayar sangat rendah, dan setelah Brexit entah kenapa terjadi kekurangan besar pengemudi truk barang
  • Senang melihat orang berganti karier di usia yang lebih matang, tetapi ungkapan “orang-orang yang mengatasi kesulitan agar bisa berdiri di lapangan yang sama dengan orang lain” terasa mirip artikel tentang teman-teman sekelas menggalang dana untuk membelikan kursi roda
    Menyenangkan mengetahui ada orang-orang baik di dunia, tetapi itu sepenuhnya mengabaikan kenyataan bahwa sistem tempat kita hidup dengan sengaja menahan orang-orang tertentu di bawah

    • Reddit memang tidak dicintai semua orang di HN, tetapi r/orphancrushingmachine tepat membahas hal seperti ini
      Ceritanya semacam “Anak-anak sekelas bekerja sama dan berdonasi untuk menyelamatkan seorang yatim dari mesin penghancur yatim!” Namun pertanyaannya tetap: kenapa mesin itu ada sejak awal?
    • Saya sangat menolak anggapan bahwa 38 tahun adalah usia paruh akhir hidup
    • “Menahan orang-orang tertentu di bawah” adalah tujuan utama sistem pendidikan. Itulah yang diajarkan
      Jika seseorang yang dianggap seharusnya berada di bawah berhasil, atau bahkan—seolah dilarang Tuhan—menonjol, ia akan menghadapi perlawanan atau hukuman ekstrem. Kadang diam-diam, tetapi sering kali terjadi secara terang-terangan di balik pintu tertutup oleh segelintir orang
    • Yang membuat ini jahat adalah tidak ada orang yang “secara sengaja” menargetkan seseorang untuk dijatuhkan
      Ini lebih merupakan kegagalan menetapkan prioritas dengan benar dan menyeimbangkan agar pajak dipakai untuk memperbaiki hidup serta hasil bagi warga biasa
      Akan lebih baik jika sejak awal mereka dibayar sesuai nilainya, sehingga orang tidak perlu berusaha begitu keras untuk berpindah menyamping di pasar tenaga kerja seperti ini
  • Saya kadang ingin mencoba pemrograman, tetapi kalau berasal dari dunia keuangan, perhitungan gaji tidak semudah pengemudi truk barang
    Saya mungkin harus langsung masuk ke posisi yang cukup senior, dan itu tidak realistis

    • Tergantung apakah keuangannya di sisi perbankan atau akuntansi. Kalau perbankan, melihat StratPy atau Python dan mengambil jalur yang lebih dekat ke quant bisa memberi kompensasi yang cukup baik
    • Pria dalam artikel itu menerima pemotongan gaji 66%
  • Kadang saya bertanya-tanya seperti apa dunia jadinya kalau tempat seperti Flatiron School atau berbagai bootcamp mengajarkan Elixir alih-alih Ruby
    Dan “lorry” benar-benar kata yang bagus, sayang tidak ada kesempatan memakainya di Amerika

    • Rasanya dunia seperti itu pun tidak akan bisa dibedakan dari sekarang. Tidak ada masalah dengan Ruby
    • Saya tidak merasa perusahaan Elixir yang sudah ada sedang mencari pengembang level baru lulus bootcamp
      Sebelum lulusan seperti itu menjadi cukup banyak hingga stack teknologi mereka memengaruhi pilihan proyek baru, mereka sulit punya bobot di pasar, dan mungkin itu juga tidak akan terjadi. Bagi pengembang junior tanpa gelar CS, hanya bisa Ruby sebenarnya juga pilihan yang cukup ketat, tetapi Ruby diajarkan karena sudah populer sebelum era bootcamp. Saya suka Elixir, tetapi kalau itu yang dilakukan, besar kemungkinan kebanyakan sekolah akan tutup dalam beberapa bulan dan para lulusannya juga tidak banyak mendapatkan manfaat
    • Saya sungguh penasaran maksudnya apa. Elixir memang paradigma pemrograman yang berbeda, tetapi saya belum memahami bahwa ia secara inheren “lebih baik” daripada Ruby
  • Dulu saya adalah pengembang KDE
    Ada beberapa kasus menarik bagaimana anggota komunitas masuk ke IT, seperti seorang soprano menjadi community manager, atau seorang nenek menjadi pengembang karena ingin memperbaiki gim untuk cucu-cucunya. Masa-masa yang menyenangkan

  • Sebagai orang yang hampir berusia 38 tahun, saya tidak merasa itu usia yang begitu tua

    • 38 tahun masih cukup muda, dan sudah cukup banyak belajar tentang hidup
      Anehnya, orang-orang di usia 20-an dengan pengalaman kerja 2 tahun mengira orang yang mendekati 40 tidak bisa memperoleh pengetahuan yang sama dalam 2 tahun. Justru orang berusia 40-an dan 50-an, berkat pengalaman hidup, mungkin lebih praktis, disiplin, lebih memperhatikan detail, dan lebih sabar
    • Semakin tua, saya makin menyadari bahwa terobsesi pada usia mirip dengan bergosip. Rasanya seperti sesuatu yang dilakukan orang yang kurang cerdas
      Sampai masuk usia 80-an, ketika kemungkinan penurunan kognitif atau kerapuhan meningkat, sulit untuk benar-benar disebut tua. Saat kecil saya mengira orang 40-an itu tua, tetapi kalau dipikir-pikir, sejak saat itu pun masih ada sekitar 40 tahun lagi sebelum benar-benar tua. Itu jauh lebih lama daripada durasi kebanyakan perusahaan, pernikahan, atau karier
  • Apakah posisi Ruby on Rails masih cukup populer?

    • Saya terlalu sering mendengar perekrut mengeluh tidak bisa menemukan kandidat yang mahir dalam bahasa tertentu XYZ, dan itu bagian paling menyebalkan dalam pemrograman.
      Developer yang bagus bisa mengejar bahasa baru dalam beberapa minggu. Saya sendiri pernah melakukannya, dan saya juga pernah melihat tim membangun seluruh platform dengan stack yang benar-benar baru bagi mereka. Pemrograman terutama adalah memecah masalah, membuat solusi, lalu mengimplementasikannya. Kode hanyalah hasil akhirnya.
    • Yang menarik di sini adalah bahwa itu Ruby.
      Menurut intuisi saya di wilayah saya, kalau Anda berasal dari latar belakang nontradisional dan tidak punya gelar CS, mungkin lebih baik mempelajari bahasa yang sedikit kurang umum seperti Ruby atau Python. Kalau melamar ke tempat yang memakai bahasa yang lebih populer, Anda harus bersaing di lautan kandidat yang punya gelar dan pengalaman dalam bahasa itu.
      Perusahaan Ruby atau Python sepertinya cenderung lebih terbuka untuk merekrut orang tanpa gelar yang biasa diharapkan, dan dalam banyak hal kemungkinan juga sedikit lebih santai. Saya hampir hanya pernah bekerja di perusahaan Java, tetapi sekali pernah bekerja di perusahaan Python; tim itu hampir secara politis membenci Java/C++/C# dan sangat militan soal betapa hebatnya Python. Kalau Anda berbagi sentimen itu, mereka mungkin akan merasakan kedekatan yang kuat dengan kandidat.
      Di tempat saya bekerja sekarang, dulu ada satu produk unik yang sudah lama dibuat dengan Ruby on Rails, dan timnya juga sama-sama bersemangat serta agak politis dengan keyakinan kuat bahwa Ruby lebih baik dari apa pun, dan mereka lebih banyak merekrut orang dari latar belakang nontradisional. Bahkan setelah saya meninggalkan posisi Python itu, selama beberapa tahun perekrut masih menghubungi saya hanya untuk mencari developer yang mau mengerjakan Python, seolah-olah itu lebih penting daripada produk, komposisi tim, atau budaya perusahaan. Saat menawarkan pekerjaan di tim Java atau C#, mereka biasanya lebih menonjolkan perusahaan, investor, produk, dan semacamnya daripada bahasanya.
    • Ya, cukup populer sampai Anda bisa menemukan pekerjaan dengan lumayan mudah.
      Jumlah lowongannya lebih sedikit daripada JS, Java, C#, tetapi developer Ruby juga lebih sedikit. Dari dulu memang selalu begitu.
    • Merekrut untuk Ruby on Rails benar-benar pengalaman yang tidak menyenangkan.
      Terlalu banyak orang yang sebenarnya tidak punya pengalaman seperti yang mereka klaim, dan ketika diberi pertanyaan pemrograman dasar yang semestinya bisa dijawab developer senior, sekitar 80% kandidat langsung beralih ke ChatGPT dan berpura-pura itu jawaban mereka sendiri. Ini bahkan bukan semacam LeetCode, hanya level “apa itu polimorfisme”, “apa itu refactoring”.
      Mungkin seluruh industri memang sudah seperti ini, tetapi karena talent pool-nya kecil, hal itu jauh lebih terlihat. Kalau terserah saya, di kantor kami akan memakai sesuatu yang lain, dan bukan hanya karena talent pool-nya kecil. Banyak fitur Rails yang katanya “menyenangkan” dan menghemat waktu ternyata tidak terlalu berdampak pada aplikasi yang kompleks, atau berubah menjadi sudut-sudut tajam yang memperlambat kami.
    • Saat mencari posisi remote AS, tampaknya sedikit kurang populer daripada Django, dan terasa seperti bertahan berkat lowongan dari GitHub dan Shopify.
      Node, dotnet, Go, Java semuanya tampak lebih populer.
  • Bagian “Saya memutuskan masuk Flatiron School. Setelah menyelesaikan programnya, kalau tidak mendapatkan pekerjaan saya tidak perlu membayar” adalah intinya.
    Saya juga pernah ikut bootcamp, salah satunya mensyaratkan wawancara masuk, dan itu wawancara sungguhan yang cukup sulit bagi pemula. Model bootcamp sebenarnya sangat bagus jika diterapkan dengan baik. Tentu saja ada korupsi dan penipuan, dan sayangnya banyak orang tidak bersalah kehilangan uang.
    Jadi kalau mempertimbangkan bootcamp, sebaiknya pilih yang sulit dimasuki dan punya income share agreement. Namun income share agreement juga bisa mencurigakan. Kadang mereka menuntut pembayaran kembali meskipun Anda mendapatkan pekerjaan yang tidak terkait teknologi, misalnya pekerjaan ritel.

    • Setelah melihat diskusi terbaru tentang BloomTech/Lambda School, saya jadi sangat berhati-hati terhadap income share agreement.
      https://news.ycombinator.com/item?id=40067939
    • Income share agreement juga bisa mencurigakan.
      Dari pengalaman saya dengan jenis ini, umumnya sangat eksploitatif dan sering menargetkan orang-orang yang rentan. Petunjuk terbesarnya adalah kebanyakan tempat seperti ini tidak menyediakan ketentuan kontrak secara terbuka. Biasanya Anda harus melalui proses selama berjam-jam sebelum mengetahui detailnya, karena alasan yang baru saja saya sebutkan: mereka tidak ingin informasinya menyebar.
      Sebaliknya, ini juga bisa dipakai sebagai filter cepat. Kalau Anda bertanya, “Bisakah Anda mengirimkan detailnya sekarang?” lalu mereka menjawab, “Tidak bisa sebelum Anda datang ke seminar tatap muka 4 jam,” langsung lewatkan saja.
  • “Menjadi sopir truk di usia 40?”
    Ini menunjukkan ageism di industri kita. Memulai pekerjaan ini pada usia 38 diperlakukan seperti orang purba, hampir seperti dipajang sebagai tontonan orang aneh.