Eugene Cozac untuk menjadi pengembang tingkat atas

Diterbitkan: 2022-10-26

TechBullion: Bagaimana Anda masuk ke pemrograman?

Eugene Cozac: Saat tumbuh dewasa, saya menemukan minat saya pada matematika dan sains STEM. Saya mulai coding sendiri, dan tentu saja, saat saya lulus SMA, saya 100% yakin ingin bekerja di bidang IT. Jadi, saya mendapat gelar di bidang Teknik Komputer dari Universitas terbaik di Moldova. Sebelum masuk ke pemrograman, saya merakit lebih dari 300 komputer karena gelar pertama saya di Teknik Komputer.

TechBullion: Apa salah satu proyek paling menantang bagi Anda di awal?

Eugene Cozac: Yah, saya tidak bisa mengatakan bahwa saya memiliki beberapa kesulitan pada awalnya. Tapi ada satu di tahun ketiga karir saya ketika saya menjadi pengembang front-end untuk Samsung Pay. Karena saya adalah pengembang UI terkemuka Samsung Pay Promotions, saya bertanggung jawab atas segalanya. Samsung Pay memiliki lebih dari 15 juta pengguna saat itu, dan masalah atau bug apa pun dapat memengaruhi pengalaman mereka. Jika terjadi kesalahan pada waktu tertentu, semua pengguna dapat melihatnya. Jadi saya sangat berhati-hati dan berusaha memberikan kualitas setinggi mungkin.

TechBullion: Biasanya, orang berspesialisasi dalam lingkup bahasa pemrograman yang sempit. Bagaimana Anda akhirnya menjadi begitu baik dalam hal bahasa pemrograman?

Eugene Cozac : Biasanya, jenjang karir pengembang pada dasarnya adalah promosi dari tingkat Junior ke Senior dari waktu ke waktu, dengan peningkatan keahlian mereka. Tapi ini tidak cukup. Sebagian besar pengembang kemungkinan akan bekerja di perusahaan yang sama dan pada proyek yang sama selama beberapa tahun, tetapi ini bukan cara bagaimana Anda bisa menjadi 1% pengembang teratas. Juga, orang tidak selalu dapat menukar proyek dengan sangat cepat, dan jika mereka ingin pindah ke perusahaan lain, ini bisa menjadi tantangan. Jadi saya ingin mengatakan, apakah banyak pengembang berada di zona nyaman mereka, yang juga baik-baik saja. Pada saat yang sama, bahkan pengembang Senior tidak akan selalu bersedia bertanggung jawab untuk menjadi kepala proyek, mereka hanya melakukan tugas mereka. Mungkin, ini ada hubungannya dengan kepribadian% kebanyakan orang tidak ingin berpartisipasi dalam hackathon, menjadi bagian dari sains, atau membangun sesuatu yang menyelesaikan masalah dalam pemrograman. Mereka agak malas dan mereka tetap baik di zona nyaman mereka. Saya selalu ingin tahu, dan kemampuan saya untuk mempelajari beberapa bahasa berasal dari kesediaan saya untuk memecahkan masalah dengan cara terbaik dibandingkan hanya mampu membuat kode pada bahasa lain.

TechBullion: Apakah Anda ikut serta dalam beberapa hackathon atau sprint pemrograman?

Eugene Cozac: Tidak juga. Saya tahu bahwa banyak pengembang dapat mencoba keterampilan mereka di hackathon, tetapi menurut saya yang paling penting adalah mencoba membangun proyek sebanyak mungkin, dan bekerja di lingkungan yang berbeda. Benar, pengembang sering ingin menunjukkan kepada orang lain atau kepada diri mereka sendiri betapa kerennya mereka melalui hackathon, tetapi, bagi saya, cara lain untuk membuktikan keahlian Anda adalah dengan membangun kerangka kerja Anda sendiri di JS/CSS, dan mempublikasikannya atau mengimplementasikan Anda kerangka kerja di perusahaan tempat Anda bekerja. Dan di sanalah untuk membuktikan mengapa perusahaan ini harus menggunakan kerangka kerja Anda sendiri, tetapi bukan React atau Bootstrap, atau Material UI. Bagaimanapun, hanya 1% dari pengembang yang memenangkan hackathon, membuat kerangka kerja mereka sendiri dapat membangun beberapa platform yang akan dapat digunakan kembali untuk jutaan pengguna.

Eugene Cozac

TechBullion: Apa produk build tercepat Anda? Bagaimana Anda berinteraksi dengan tim selama proses tersebut?

Eugene Cozac: Biasanya, pengembang bekerja di lingkungan Agile, dan mereka memiliki sejumlah tugas per sprint (2 minggu). Apa yang harus dilakukan jika tugas-tugas ini dibagi 2 minggu, tetapi Anda dapat melakukan semuanya dalam 3 hari? Tidak semua perusahaan etis untuk meminta lebih banyak tugas karena kita setara, saya dan juga Manajer Proyek merencanakan sejumlah pekerjaan untuk semua pengembang. Tetapi saya memiliki situasi di mana saya adalah seorang kontraktor untuk sebuah perusahaan di mana saya hanya satu pengembang, dan itulah mengapa saya memilih perusahaan itu. Bagi saya itu tidak begitu menarik untuk mengerjakan sejumlah kecil tugas, saya ingin membangun Aplikasi Web untuk perusahaan sendirian, misalnya, bukan 5 pengembang. Dalam 11 bulan saya membuat sistem CRM dari awal sampai akhir, ada pekerjaan API, UI, dan UX. Proyek ini dilakukan dengan sangat cepat dengan banyak fungsi seperti mengelola proyek, melacak inventaris, membuat faktur, membuat dan mengelola penawaran, serta melacak inventaris menggunakan GPS. Saya tidak memiliki informasi terkini, tetapi CRM ini akan dijual sebagai langganan karena ceruk bisnis kecil: akustik dalam konstruksi.

TechBullion: Apa yang diperlukan untuk menjadi pengembang terkemuka?

Eugene Cozac: Banyak pengembang dapat menanggapi Anda bahwa pengalaman adalah hal terpenting jika Anda ingin menjadi pengembang terkemuka, tetapi ini belum tentu benar. Saya tahu banyak pengembang yang memiliki pengalaman lebih dari 10 tahun, tetapi banyak proyek atau tugas kompleks yang berbeda dapat menjadi tantangan bagi mereka. Hal ini dapat menjelaskan mengapa seseorang membutuhkan 7 – 8 tahun untuk menjadi Senior Developer sedangkan untuk yang lainnya hanya membutuhkan waktu 4 tahun. Jadi, pendekatan terbaik adalah mengembangkan kemampuan luar biasa Anda, dan cara yang tepat untuk menyelesaikan tugas, dan kemudian mengalami. Pada saat yang sama baik untuk melakukan wawancara dalam pengembangan untuk disewa: Saya melakukan lebih dari 100 wawancara untuk berbagai klien. Seperti yang saya katakan untuk membuktikan kemampuan dan keterampilan luar biasa Anda dalam pemrograman adalah dengan mengimplementasikan proyek dalam kerangka kerja Anda sendiri di perusahaan tempat Anda bekerja. Ini berarti Anda tidak hanya tahu bahasa pemrograman dan cara menggunakan kerangka kerja tetapi Anda dapat membangun kerangka kerja Anda sendiri dan membuktikan kepada perusahaan untuk menggunakannya. Jadi berdasarkan kerangka kerja Anda sendiri akan membangun produk yang akan menggunakan jutaan pengguna. Saya pikir ini hanya dapat dilakukan 1% dari pengembang. Sebagai contoh, saya sedang membangun kerangka UI saya sendiri yang dapat digunakan dalam kombinasi dengan React namanya Krypton. Itu masih belum selesai tetapi untuk salah satu klien saya saat ini, saya menggunakan bagian Krypton untuk membangun proyek baru. Jadi klien saat ini tidak menggunakan kerangka kerja saya sepenuhnya tetapi sebagian, tetapi saya berharap sampai kami menyelesaikan proyek untuk klien ini, Krypton saya akan selesai, dan lebih dari 60% proyek akan dibangun di Krypton. Juga, satu tip bagus untuk menjadi pengembang terkemuka adalah menulis publikasi sains di jurnal profesional, saya memiliki lebih dari 25 di antaranya. Juga, saya melakukan lebih dari 100 ulasan artikel sejawat, karena sebagai pengembang, Anda tidak hanya harus menjadi bagian dari pemrograman tetapi juga bagian dari sains.

TechBullion: Apa keterampilan terkuat Anda?

Eugene Cozac: Saya akan mengatakan, kemampuan untuk bergabung dengan proyek apa pun dalam jangka waktu apa pun. Saya berada dalam situasi yang berbeda dari ketika saya memulai proyek dari awal atau saya bergabung ketika proyek sedang berlangsung. Banyak perusahaan memberi Anda waktu sekitar 2 – 3 minggu untuk memahaminya, biasanya bagi saya membutuhkan waktu 2 hari. Pengembang dengan kemampuan luar biasa dapat memahami proyek apa pun dan mulai memperbaiki masalah atau melakukan tugas dalam hitungan hari, bukan minggu. Selain itu, saya dapat mengerjakan 4 proyek sekaligus. Saya kira, hanya 1% pengembang yang bisa melakukan itu, maksud saya semua jenis pengembang dari Junior hingga Tech Leads. Saya memiliki pengalaman mengerjakan 2, 3, dan 4 proyek secara bersamaan, dan memberikan hasil yang sangat baik, terlebih lagi, pada semuanya, saya setidaknya seorang Senior atau pemimpin tim untuk sekitar 4 pengembang. Juga, pada level ini, Anda harus dapat membimbing pengembang lain dari Junior hingga Senior. Bekerja juga sangat cepat tidak hanya dalam proyek sehari-hari tetapi juga untuk membangun sesuatu seperti kerangka kerja sumber terbuka, menulis publikasi ilmiah, dan sebagainya. Kualitas. Kecepatan. Diversifikasi.

TechBullion: Bahasa apa yang paling menantang bagi Anda?

Eugene Cozac: Saya tidak berpikir bahwa kerangka kerja atau bahasa apa pun sangat menantang, begitu Anda mengetahui satu bahasa pemrograman, yang lain sejenis hanya memiliki beberapa aturan lain, atau kerangka kerja dapat memiliki lebih sedikit atau lebih banyak fitur. Untuk pengembang kemampuan luar biasa tidak ada bahasa pemrograman yang menantang.