Eugene Cozac üst düzey geliştirici olma yolunda
Yayınlanan: 2022-10-26TechBullion: Programlamaya nasıl başladınız?
Eugene Cozac: Büyürken matematik ve STEM bilimine olan ilgimi keşfettim. Kendi başıma kodlamaya başladım ve tabii ki liseyi bitirdiğimde IT'de çalışmak istediğimden %100 emindim. Böylece Moldova'daki en iyi üniversiteden Bilgisayar Mühendisliği diploması aldım. Programlamaya başlamadan önce Bilgisayar Mühendisliği'nde birinciliğim olduğu için 300'den fazla bilgisayar topladım.
TechBullion: En başında sizin için en zorlu projelerden biri neydi?
Eugene Cozac: Eh, başlangıçta biraz zorlandığımı söyleyemem. Ancak kariyerimin üçüncü yılında Samsung Pay için ön uç geliştirici olduğumda bir tane vardı. Samsung Pay Promosyonlarının lider UI geliştiricisi olduğum için her şeyden sorumluydum. Samsung Pay'in o zamanlar 15 milyondan fazla kullanıcısı vardı ve herhangi bir sorun veya hata, deneyimlerini etkileyebilir. Herhangi bir zamanda bir şeyler ters giderse, tüm kullanıcılar bunu görebiliyordu. Bu yüzden çok dikkatliydim ve mümkün olan en yüksek kaliteyi sunmaya çalıştım.
TechBullion: Genellikle insanlar, programlama dillerinin dar bir alanında uzmanlaşırlar. Programlama dilleri konusunda nasıl bu kadar çok yönlü oldunuz?
Eugene Cozac : Genellikle, bir geliştiricinin kariyer yolu, temel olarak, becerilerinin geliştirilmesiyle birlikte zaman içinde Junior'dan Senior'a bir terfidir. Ama bu yeterli değil. Geliştiricilerin çoğu muhtemelen aynı şirkette ve aynı projede birkaç yıl çalışacak, ancak bu şekilde geliştiricilerin ilk %1'i haline gelemezsiniz. Ayrıca, insanlar projeleri çok hızlı değiştiremezler ve başka bir şirkete geçmek isterlerse bu zor olabilir. Yani söylemek istiyorum ki, pek çok geliştirici kendi rahatlık bölgesinde, ki bu da iyi. Aynı zamanda, Kıdemli geliştiriciler bile her zaman projenin başında olmak için sorumluluk almaya istekli olmayacaklardır, sadece görevlerini yapıyorlar. Muhtemelen, bunun bir kişilikle ilgisi vardır, çoğu insan hackathonlara katılmak, bilimin bir parçası olmak veya programlamadaki bir sorunu çözen bir şey inşa etmek istemez. Biraz tembeller ve rahatlık alanlarında iyi kalıyorlar. Her zaman merak etmişimdir ve birkaç dil öğrenme yeteneğim, sorunu başka bir dilde kod yazabilmek yerine sorunu mümkün olan en iyi şekilde çözmeye istekli olmamdan gelir.
TechBullion: Bazı hackathon'lara veya programlama sprintlerine katıldınız mı?
Eugene Cozac: Pek sayılmaz. Birçok geliştiricinin becerilerini hackathonlar üzerinde deneyebileceğini biliyorum ama bence en önemli şey yapabildiğiniz kadar çok proje inşa etmeye çalışmak ve farklı ortamlarda çalışmak. Doğru, geliştiriciler genellikle hackathonlar aracılığıyla başkalarına veya kendilerine ne kadar havalı olduklarını göstermek isterler, ancak bana gelince, becerilerinizi kanıtlamanın başka bir yolu da JS/CSS üzerinde kendi çerçevenizi oluşturmak ve bunu herkese açık hale getirmek veya kendi çerçevenizi uygulamaktır. çalıştığınız bir şirkette çerçeve. Ve bu şirketin neden kendi çerçevenizi kullanması gerektiğini, ancak React veya Bootstrap veya Material UI kullanmaması gerektiğini kanıtlamak için. Her neyse, geliştiricilerin sadece %1'i hackathonlar kazanıyor, kendi çerçevelerini oluşturarak milyonlarca kullanıcı için yeniden kullanılabilecek platformlar inşa edebiliyorlar.

Eugene Cozac
TechBullion: En hızlı inşa ürününüz neydi? Bu süreçte ekiple nasıl etkileşim kurdunuz?
Eugene Cozac: Geliştiriciler genellikle Çevik bir ortamda çalışırlar ve sprint başına bir takım görevleri vardır (2 hafta). Bu görevler 2 haftaya bölünürse, ancak her şeyi 3 günde yapabilirseniz ne yapmalı? Eşit olduğumuz için tüm şirketler daha fazla görev istemek için etik değil, ben ve ayrıca Proje Yöneticileri tüm geliştiriciler için bir miktar iş planlıyor. Ancak tek geliştiricisi olduğum bir şirkette müteahhitlik yaptığım bir durum vardı ve bu yüzden o şirketi seçtim. Benim için az sayıda görev üzerinde çalışmak o kadar ilginç değildi, örneğin 5 geliştirici yerine tek başıma bir şirket için bir Web Uygulaması oluşturmak istedim. 11 ayda sıfırdan sonuna kadar bir CRM sistemi oluşturdum, API, UI ve UX çalışması vardı. Bu proje, projeleri yönetme, envanter takibi, fatura oluşturma, teklif oluşturma ve yönetme ve ayrıca GPS kullanarak envanter takibi gibi birçok işlevsellik ile çok hızlı bir şekilde yapıldı. Güncel bilgilere sahip değilim, ancak bu CRM, küçük iş nişi nedeniyle abonelik olarak satılacak: inşaatta akustik.

TechBullion: Birinci sınıf bir geliştirici olmak için ne gerekiyor?
Eugene Cozac: Birçok geliştirici, birinci sınıf bir geliştirici olmak istiyorsanız, deneyimin en önemli şey olduğu yanıtını verebilir, ancak bu mutlaka doğru değildir. 10 yıldan fazla deneyime sahip birçok geliştirici tanıyorum, ancak birçok proje veya farklı karmaşık görevler onlar için zor olabilir. Bu, birisi için neden Kıdemli Geliştirici olmanın 7-8 yıl sürdüğünü, diğerleri için sadece 4 yıl sürdüğünü açıklayabilir. Bu nedenle, en iyi yaklaşım, olağanüstü yeteneklerinizi geliştirmek ve görevleri çözmenin doğru yolunu ve ardından deneyimlemektir. Aynı zamanda, geliştirme aşamasında kiralık röportajlar yapmak da iyidir: Çeşitli müşteriler için 100'den fazla görüşme yaptım. Dediğim gibi, programlama konusundaki olağanüstü yeteneklerinizi ve becerilerinizi kanıtlamak, çalıştığınız şirkette kendi çerçevenizde bir proje uygulamaktır. Bu, yalnızca programlama dillerini ve çerçevelerin nasıl kullanılacağını bilmekle kalmayıp, kendi çerçevenizi oluşturabileceğiniz ve şirkete bunu kullanmasını kanıtlayabileceğiniz anlamına gelir. Böylece kendi çerçevenize dayanarak milyonlarca kullanıcıyı kullanacak bir ürün oluşturacaksınız. Bunun geliştiricilerin sadece% 1'ini yapabileceğini düşünüyorum. Örneğin, adı Krypton olan React ile birlikte kullanılabilecek kendi UI çerçevemi oluşturuyorum. Hâlâ bitmedi ama şu anki müşterilerimden biri için yeni bir proje inşa etmek için Krypton'un bazı kısımlarını kullanıyorum. Yani mevcut müşteri benim çerçevemi tamamen değil, kısmen kullanıyor, ama umarım bu müşteri için projeyi bitirene kadar benim Krypton'um yapılacak ve projenin %60'ından fazlası Kripton üzerine inşa edilecek. Ayrıca, birinci sınıf bir geliştirici olmak için iyi bir ipucu, profesyonel dergilerde bilim yayınları yazmaktır, 25'ten fazla dergiye sahibim. Ayrıca, 100'den fazla akran makale incelemesi yaptım, çünkü bir geliştirici olarak sadece programlamanın değil, aynı zamanda bilimin bir parçası olmanız gerekir.
TechBullion: En güçlü becerileriniz neler?
Eugene Cozac: Herhangi bir projeye herhangi bir zaman diliminde katılma yeteneği diyebilirim. Projeye sıfırdan başladığımdan veya proje devam ederken katıldığımdan farklı durumlardaydım. Pek çok firma size bunu anlamanız için 2-3 hafta civarında süre veriyor, benim için genelde 2 gün sürüyor. Olağanüstü yeteneklere sahip geliştiriciler, herhangi bir projeyi anlayabilir ve haftalar değil, günler içinde sorunları çözmeye veya görevleri yapmaya başlayabilir. Ayrıca aynı anda 4 proje üzerinde çalışabilirim. Sanırım geliştiricilerin sadece %1'i bunu yapabilir, yani Junior'dan Tech Leads'e kadar her türlü geliştiriciyi kastediyorum. Aynı anda 2, 3 ve 4 proje üzerinde çalışma ve çok iyi sonuçlar verme deneyimim oldu, ayrıca hepsinde en az bir Kıdemli veya yaklaşık 4 geliştirici için ekip lideriyim. Ayrıca, bu seviyede, Junior'dan Senior'a kadar diğer geliştiricilere mentorluk yapabilmeniz gerekir. Sadece günlük projelerde değil, aynı zamanda açık kaynaklı bir çerçeve oluşturmak, bilimsel yayınlar yazmak vb. gibi bir şey oluşturmak için de çok hızlı çalışmak. Kalite. Hız. çeşitlendirme.
TechBullion: Sizin için en zorlayıcı dil hangisiydi?
Eugene Cozac: Herhangi bir çerçevenin veya dilin çok zorlayıcı olduğunu düşünmüyorum, bir programlama dilini öğrendikten sonra diğerlerinin de birkaç kuralı vardır veya bir çerçevenin daha az veya daha fazla özelliği olabilir. Olağanüstü yetenekler için geliştirici, zorlu bir programlama dili yoktur.