Telefon : +90 212 275 71 06  
Nasıl program geliştirici olunur: Profesyonellerden 7 ipucu

Nasıl program geliştirici olunur: Profesyonellerden 7 ipucu

Front-end, full stack ve mobil geliştiricilere yönelik kurumsal talep hızla artıyor. Bu alanda bir kariyere başlamak için ihtiyacınız olanları derledik.


Mobil teknolojinin ve Nesneler Interneti'nin (IoT) patlamasıyla, geliştiriciler ABD'de en çok aranan profesyoneller arasında girdi. ABD İşçi İstatistikleri Bürosu tahminlerine göre yazılım geliştirme işleri 2014 ile 2024 arasında %17 artacak; büronun belirttiğine göre bu oran diğer mesleklerin ortalama hızından çok daha fazla. Aynı zaman aralığında uygulama geliştirme işlerinin %19 ve sistem geliştirme işlerinin %13 artacağı öngörülüyor.


İş arama sitesi Indeed.com'dan alınan verilere göre front-end geliştirici, full stack geliştirici, mobil geliştirici ve back-end geliştirici pozisyonları şu anda en zor doldurulan ilk 10 pozisyon içinde yer alıyor. Ve Indeed.com'da iş arayanlar tarafından yapılan aramalarda deneyimli Ruby geliştiricilerinde %656 gibi sarsıcı bir artış var; son rapora göre bu grup, sitede en hızlı artan aramalar arasında.


Forrester başkan yardımcısı ve uygulama geliştirme ve teslimat ana analisti Jeffrey Hammond'ın söylediğine göre "geliştiriciler için çok fazla fırsat ve talep var".


Hammond ayrıca web geliştirme ve mobil uygulama geliştirmenin, bir geliştiricinin iş aramaya başlamak için iyi alanlar olduğunu da belirtiyor. Ve ekliyor; "Günümüzdeki mobil uygulama geliştirme ortamında, kendi başlarına yaptıkları ve göstermek istedikleri bir şeyler ya da App Store'da dikkat çekmek istedikleri uygulamalar varsa insanlar şanslarını kullanmak istiyor". "Talebin nerede yoğunlaştığına bakıp bu alanlara geçiş yapmaya çalışın."


İşte bir geliştirici kariyerine başlamak için ihtiyacınız olan yedi beceri.


1. Kodlama


Kodlama Cephesi yakın zamanda SQL, Java ve Python'u 2017'nin en çok talep edilen ilk üç kodlama dili olarak tanımladı.  Experts Exchange operasyon direktörü Gene Richardson "Bir ya da iki dil bilmek ve üstüne bir de kodlama yapabilmek kapıyı çaylak ya da yardımcı geliştirici olarak aralamanızı sağlayacaktır" diyor.


Geliştirici eğitim kampları öğrenmek için iyi yerler olabilir, ancak  buradan çıkanların beceri seviyesi tartışma konusu. Harmond, "Her yıl yalnızca 50.000 civarında bilgisayar bilimleri mezunu çıkarıyoruz ve bu sayı geliştirici talebini karşılamak için yeterli değil" diyor. Harmond'un söylediğine göre teknoloji devleri kaliteli üniversitelerden mezun olan bilgisayarcılar için yarışıyor. "Ancak küçük ve orta ölçekli işletmeler ve yeni kurulan şirketler şanslarını motive olmuş ve yaptıkları işe dikkat çekebilecek kişilerden yana kullanmak istiyor" diye ekliyor. Bu da, Harmond'a göre, özellikle şirketlerin geliştirici personellerini çeşitlendirmek istediği bir ortamda bir kodlama eğitim kampını geçerli bir opsiyon haline getiriyor.


Ve bunu öğrendiğinizde, "kodlama konusunda derine inmekten çekinmeyin" diyen Tufts University mühendislik fakültesi IEEE öğretim üyesi ve dekan yardımcısı Karen Panetta ekliyor. "Genç geliştiriciler programlarının bellekte nasıl görüneceğini görmek için düşük seviyeli hata gidericiler kullanmaktan kaçınma ve verilerinin nasıl depolandığını, potansiyel olarak kazara nasıl üzerine yazılabileceğini ya da elektrik kesintisi ya da iletim hatası gibi bir kesilmeden nasıl etkilenebileceğini anlamak için komut koduna adım atma eğiliminde."


2. Farklı uygulama geliştirme yapı iskeleleri


Richardson, geliştiricilere Agile ve Waterfall gibi farklı uygulama geliştirme yapı iskelesi ve metodolojilerini, ve bunları ne zaman uygulayacağınızı belirleyebilmek için bunların güçlü ve zayıf yanlarının neler olduğunu öğrenmelerini öneriyor. Ayrıca kullanılacak çerçeveyi belirlemek için doğru soruların nasıl sorulacağını bilmenin de önemli olduğunu belirtiyor. Bu sorular şunlar; "Hangi sorunları çözmeye çalışıyorsunuz? Hedef kitleniz kimler? Başarı ölçütünüz nedir? Bütçe ve zaman çizelgesi nedir?"


3. Makine öğrenme ve yapay zeka yöntemleri


Kıdemli IEEE üyesi ve  Coughlin Associates kurucusu Tom Coughlin "Bu alanlar yeni bir çok uygulamanın bir parçası olmaya başlıyor" diyor. TechRepublic yazarı Mary Shacklett yakın zamanda makine öğrenmenin, ürünleri adına daha kaliteli beklentilere yönelmeleri için uygulama geliştiricilerine iş zekası sunduğunu belirtti.

Atlassian CTO'su Sri Viswanath yakın zamanda TechRepublic'e verdiği demeçte makine öğrenmenin yükselişinin bazılarının korktuğu gibi daha az değil daha fazla geliştirici iş sağlayacağına inandığını söyledi.


4. Kullanıcı psikolojisi


Coughlin "İnsanların nesneleri nasıl ve neden kullandığı hakkında olabildiğince çok bilgi edinin, bu sayede ürünleriniz sezgisel ve kişiselleştirilmiş bir kullanıma sahip olur" diyor.

Panetta ise her şeyin gelip vardığı noktanın kullanıcı arayüzü olduğunu söylüyor. "Geliştirme yaparken kullanım kolaylığı konusuna ciddi şekilde eğilmeniz gerekiyor" diye de ekliyor.


5. Üretkenlik araçları


Richardson, hem işinize hem de ekibinize yardımcı olacak geliştirici üretkenlik araçlarını kullanmanın önemli olduğunu söylüyor ve ekliyor: "Bu araçlar projelerinizin ve işinizin piyasaya çıkma süresini içerebilecek". 


6. Ayrıntılı kod değişiklikleri


Panetta, koda ayrıntılı yorumların, kodda yapılan revizyon geçmişinin ve bu revizyonların nedenlerinin belirtilmesi gerektiğini söylüyor ve ekliyor. "Başarılı bir şirket, birinin kodunuzu alması ve bunu anlayamazsa, kodu yeniden yazması gerektiği felsefesini kullanır". "Bu çok zaman kaybettiren ve pahalı bir yaklaşımdır, ama birinin kodunuzun kıymetini bilmediğini ve üzerine ekleme yapmaya devam ettiğini, ama temelde önemli bazı ayrıntıları atladığını düşünün. Bunun sonuçları felaket olabilir."


Panetta, 1980'lerde 6 kişinin ölümcül dozda radyasyona maruz kaldıktan sonra yaşamını yitirdiği kötü şöhretli Therac-25 röntgen cihazının kasasına atıfta bulunuyor. Yazılım, bu gibi durumların önüne geçmek için donanımın bir kilidi olduğunu varsaymıştı, bu yüzden geliştiriciler koda bu tür bir koruma önlemi eklemeyi düşünemedi.


7. Ekip çalışması


"Olabildiğince çok hackleme maratonuna ya da yarışmaya katılın" diyen Panetta ekliyor. "Bu kazanmakla ilgili değil, bu daha önce görmediğiniz sorunlarla yüzleşmek ve kısıtlı bir süre içinde bir şeyler geliştirmek için bir ekip ile bir araya gelmekle ilgili". "Bir ekipte nasıl çalışıldığını öğrenecek, diğer insanların geliştirmeye nasıl yaklaştığını görecek ve fayda-zarar dengesini nasıl kuracağınızı öğreneceksiniz. Gerçek dünyada her şey en iyi fayda-zarar dengesi kararlarını vermekle ilgilidir ve bu konularda bilgi sahibi olmak sizin için en büyük değer olacak."


Yazının orijinali için tıklayınız.