Programlama öğrenirken matematik derecesi bir avantaj sağlıyor mu? Her şey, ilgili konulara ne kadar çaba harcadığınıza bağlıdır.

Bu, Ukraynalı Roman'ın hikayesidir. Bugün kıdemli bir Java geliştiricisidir. 2015 yılının ortalarında, uygulamalı matematik alanında yüksek lisans yapmakta olan bir öğrenciydi. Orijinal hikaye burada . Aşağıda en önemli parçaları bulabilirsiniz.

Memleketinin gerçekleri göz önüne alındığında Roman, matematik eğitiminin kendisine yalnızca bir programcı olarak iyi para kazandıracağından emindi. Ancak bir Java geliştiricisi olma seçimi kasıtlı olmaktan çok rastgeleydi. Sadece kitaplardan ya da tam zamanlı kurslardan eğitim almak istemiyordu: Öğrencimiz bunların çok pahalı olduğuna karar verdi, ancak çok az fayda sağladı.

Ve sonra Java kursumuzu buldu. Bu, Ağustos 2015'in sonunda / Eylül ayının başındaydı.

Bir Java çalışma planı

Roman, öğrenme planını hazırlarken oyalanacak zamanı olmadığı gerçeğinden yola çıktı.

Bir hedef belirledi: öğrenmeye olan ilgiyi sürdürmek için bilgiyi hızlı bir şekilde elde edin, ancak beynini aşırı yükleyecek kadar hızlı değil.

Buna göre, şuna karar verdi:

  1. Haftada beş gün çalışın (Pazartesiden Cumaya).
  2. Hafta sonu ders çalışmak dışında her şeyi yapın.
  3. Her çalışma oturumu için 4 saat ayırın — her saatten sonra yürümek, rahatlamak ve çay yapmak için 15 dakikalık bir mola verin.

Haftada toplam 20 saat. Fena değil, ha? Ayrıca Roman, hâlâ yüksek lisans okulunda olduğu için bazen üniversiteye gitmek zorunda kalıyordu.

Aralık ayına kadar, kursun yarısını tamamlamıştı ve beyninin yeni bilgileri almayı reddettiği kriz anları olmasına ve herhangi bir programlama yapmadan sadece bir hafta sonu ilerlemesine yardımcı olmasına rağmen, şimdiden çok büyük miktarda öğrendiğine karar verdi.

Yeni bir seviyeye geçmek

Roman, eğitimine başladıktan üç ay sonra, bir iş bulmak için daha neleri bilmesi gerektiğini merak etmeye başladı. Tavsiye için tanıdığı programcıları çevirdi.

Ve "veritabanları" (korku!) gibi duyduğu yabancı kelimeler ve çok daha fazlası, hızını artırması ve daha fazlasını yapması gerektiğini bilmesini sağladı. Bu ipuçları kesinlikle size de yardımcı olacaktır.

  1. Kitap okuma. Roman'ın durumunda, çok yeşil yeni başlayanlar için önerilen "Head First Java" yararlı oldu. Bazı nüansları daha iyi anlamasına yardımcı oldu.
  2. Ağ oluşturma. Şehrinizdeki (ve başka yerlerdeki) tüm ilgili programcı mekânlarını ziyaret etmelisiniz. Pek çok şey belirsiz olsa bile, kendinizi çevreye bu şekilde kaptırırsınız.
  3. BT web siteleri. Programcılar için medya, YouTube'daki video kursları, forumlar - tüm bunları derinlemesine incelemeniz ve bir Java geliştiricisinin gelişmesinin ne anlama geldiğinin bütüncül bir resmini oluşturan yararlı makaleleri okumanız gerekir.
    Şahsen CodeGym'deki Makaleler, Forum ve Sohbet bölümlerinden başlamanızı öneririz :)
  4. Ana ilgili teknolojiler: MySQL, HTML ve CSS ve çok daha fazlası.
  5. Kendiniz için harika bir LinkedIn profili oluşturun, tüm becerilerinizi listeleyin ve aktif olarak profesyonel bağlantı çevrenizi genişletin.
    Roman deneyimlerini şöyle paylaşıyor: "LinkedIn'de şu anda 10.000'den fazla arkadaşım var. Başlangıç ​​için bu gerekli. Android serbest çalışanlarından oluşan bir ekip bir acemi eklemek istediğinde ve benimle iletişime geçtiklerinde bu yardımcı oldu."

İlk başarısızlıklar

Tabii ki, Roman çalışmalarına paralel olarak şirketlerde staj arıyordu ve bir gün bir röportaj aldı. Kendini ikna edici bir şekilde İngilizce sunmaya ve teknoloji liderinin tüm sorularını yanıtlamaya hazır değildi. Ona göre, "[test görevini] tüm işlevselliğiyle olmasa da bir şekilde bitirdi. Bir süre sonra başvurusu reddedildi ve yoluna devam etmeye karar verdi.

Roman, bir Android geliştirme projesine katılmaya davet edildiği LinkedIn sayesinde ilk işini aldı. Gerçek iş, elbette CodeGym'deki görevlerden daha zordu ve yol boyunca öğrenilecek çok şey vardı. Takım yavaş yavaş dağıldı, bu yüzden pilot projeyi yeni bir seviyeye taşıyamadılar ve yeni bir iş aramak zorunda kaldı.

yeni bir iş arıyorum

Nereye gitmeli? Roman programcılar için çevrimiçi medyayı taradı ve şehrinde uygun şirketlerin iletişim bilgilerini buldu. Büyük bir posta kampanyası başlattı.

Her şeyin iyi görünmesini sağlamak için özgeçmişini İngilizce yazdı. Ona göre, yazacak özel bir şeyi olmadığını hissettiği için çok fazla tüyle doluydu. Zorunlu bir öğe, bir ön yazıdır (İngilizce de olmalıdır), böylece işe alım görevlileri hangi pozisyona ve neden başvurduğunuzu anlar. En sevdiği röportaj sorusu için İngilizce bir yanıt hazırladı: "Bana kendinden bahset." Bu çok kullanışlı.

Röportajlar zor, utanç verici ve rahatsız ediciydi ama Roman bunların üstesinden geldi. Bazılarında sadece sohbet etmek istediler. Diğerlerinde, birkaç kodlama görevi yapmak gerekliydi.

ilk teklif

Dört görüşmeden sonra, iki şirket Roman'ı reddetti, ancak ikisi ona bir teklifte bulundu: biri Android geliştiricisi, diğeri Java geliştiricisi pozisyonu için. Bir süre ne yapacağını bilemeden bocaladı ama sonunda bir Java geliştiricisi oldu.

Aradan birkaç yıl geçti ve Roman kıdemli bir Java geliştiricisi, boş zamanlarında aktif olarak açık kaynak projelerine dahil oluyor (işte GitHub profili ) ve CodeGym'deki " Makaleler " bölümünde yararlı deneyimlerini öğrencilerle sık sık paylaşıyor .