Röportajın bir parçası olmaya devam ediyorum, öneriler? [kapalı]


13

Bu yüzden portföyümde birkaç yazılım / site var. Para kazanıyorlar ama çok değil.

Bu yüzden, özellikle Java / PHP gençlik geliştirme pozisyonlarına başvurarak bazı iş deneyimleri almaya karar verdim.

Sorun şu ki, tüm teknik sorulara doğru cevap veriyorum ve röportajın son aşaması olan bir kodlama "testi" yapmayı planlıyoruz. Asla rahatlayamam ve bir şeyler düşünemiyorum ve sonunda testi çok yavaş yapıyorum. VEYA bazen sadece bir bloğa vurdum ve ayaklarımda düşünmek çok zor buluyorum.

Bunu anlamıyorum çünkü yazdığım diğer şeyler çok daha karmaşık sorunları çözerken "Test" aslında palindrom yazmak ve test etmek gibi acımasızca basitti.

Diğer zamanlarda, bana matematik işlemlerine akışları olan bir mantık testi verecekler ve yine atadıkları zamanda yapamam.

Küçük gelirler yaratabilen ve sorunları çözmenin yollarını bulabilen satılabilir yazılım / web siteleri yazabileceğimi biliyorum, ancak görüşmelerde basit kodlama testlerinde büyük zorluk yaşıyorum.

Herhangi bir öneri?


3
Programmerlerin olası kopyası.stackexchange.com/questions/ 80065/… , programmers.stackexchange.com/questions/1947/…
Adam Lear

Görünüşe göre en azından röportaj testlerinin basit olabileceğini düşünüyorsunuz, ancak thos testleriyle ilgili sorun yaşamakta yalnız değilsiniz: infoworld.com/d/application-development/…
Bazı programcı ahbap

2
Bu bağlantıya katılmıyorum. İyi bir geliştirici ve kötü olan arasındaki fark göz önüne alındığında, gerçekten kötü adaylar almaktan ziyade bazı iyi adayları düşünerek riske atmak istersiniz.
deadalnix

7
@deadalnix Anlaşmazlığınıza katılmıyorum. :-) Yeterince iyi programcılar testler flunk gördüm ve kötü programcılar test yararlı ve çoğu zaman ters vermez düşünüyorum testleri geçmek. IMO, yaptıkları tek şey görüşmeciyi / İK'yı iyi hissettirmek.
Brian Knoblauch

2
@BJoachim ve hepsi: bu bağlantıdaki ilk paragrafları okuduysanız, testleri alakalı ve yararlı tutmak için gerçekten iyi bir tavsiye: testlerin işe yaramaz olduğunu söylemez.
MarkJ

Yanıtlar:


18

Görüşmelere katılmaya devam edin. Sonunda güçlü yönlerinize daha uygun sorular soracak bir yer bulacaksınız. Ayrıca, sadece yardımcı olabilecek röportajda daha iyi ve daha rahat olursunuz. Oyuna bir oyun olarak bakın, çünkü gerçekten budur. Oynamaya devam edin ve sonunda kazanacaksınız.


2
Soruların değeri / içeriği meselesi değil, sadece cevap koşulları. Kötü yazı bool isPalindrome(string)yazdım çünkü kağıt üzerinde, 15 dakikalık bir süre içinde yazacaktım. Bir metin editörü ve hiçbir zaman sınırı göz önüne alındığında, bir dakikadan az bir sürede mükemmel bir şekilde yapabileceğime inanıyorum.
SF.

9
@SF: röportajdan sonra denedin mi? Seni ne kadar sürdü?
kevin cline

2
Ayrıca zayıflıklarınız üzerinde çalışmaya devam edin. Bu durumda, küçük, benzer sorunları bulun ve kağıt üzerinde çalışırken kendinize zaman ayırın. Önce bir şeylerin çalışmasını sağlayın (yanlış olsa bile), sonra doğru yaparak tekrarlayın. Bu şekilde görüşme sürecinizi röportajın bir parçası olarak gösterebilirsiniz. Görünüşe göre bu şu anda eksik olduğunuz en büyük beceri (şu anda) şimdi en az çıktıyı alın, sonra zamanla geliştirin. Bunun gibi birçok işletme :-)
Al Biglan

Sadece slashdot ile bağlantılı gördüm; biraz ilgili: infoworld.com/d/application-development/…
Kevin Hsu

Sorun kağıt üzerinde programlayamamanızsa, bence bu gerçek bir sorundur. "isPalindrome" herhangi bir belirsiz API çağrısı veya dil özelliğine ihtiyaç duymamalıdır; intellisense veya IDE avantajları olmadan böyle derlenebilir bir program yapabilmelisiniz.
Eoin Carroll

12

Bu çok yaygın. Çoğu programcı konfor bölgelerinde etkin bir şekilde programlayabilir. Örneğin, sadece Ubuntu üzerinde çalışabiliyorum, vim ile, eğer o çalışma alanım yoksa programlama gibi hissetmeyeceğim. Ayrıca araştırma için bir dereceye kadar Google'a ihtiyacım var .

Eminim programlama için bir rahatlık bölgesi geliştirmişsinizdir. Kodunun tamamlanmasını bekleyen birisinin arkanızda olduğu ortama alışmanızı tavsiye ederim. Buna alışmanın en iyi yolu röportaj yapmaya devam etmektir.

Çok fazla etkisi olmadığını düşünebilirsiniz ve olmayabilir. Ama orada bazılarımız için, müzikle veya müziksiz programlama, bir IDE veya basit bir metin editörü kullanarak, ahşap bir sandalye kullanarak veya bir koltukta, karanlık bir odada veya parlak bir odada oturmak ... gelişimimizde büyük bir fark yaratıyor hız.

İşi aldıktan sonra, genellikle size verdikleri ofis alanında kendi konfor bölgenizi oluşturabileceğinizi unutmayın.

EDIT : Bu soru bana bir satış personeline hatırlatıyor, soğuk aramada nasıl rahat ve daha iyi olacağını sordu. En iyi cevap, soğuk arama yapmaya devam etmek ve her aramayı yansıtmaktır. Bir süre sonra satış elemanı becerilerini ve konforlarını geliştirir. Programcıların röportajlara katılırken farklı olmadığını düşünüyorum, sonuçta asıl mesele kendinizi görüşmeciye satmaktır


Sopha kimdir? Sophie'nin güzel ikizi mi?
11:23

@Rick: maalesef, bir görüşmeci olarak, birinin etkili bir programcı olduklarını söyleyemem. Aslında programlayabileceklerini görmeliyim. Ne rapor edilen deneyim, ne GPA, ne de sertifikalar veya kod örnekleri bunu söyleyebilir. Adayların biraz programlama yaptığını görmem gerek.
kevin cline

@kevincline Katılıyorum, bu yüzden röportajlara devam etmesini ve kendiniz gibi röportajcılarla rahat etmesini öneriyorum.
Rick Rhodes

6

Bu sadece benim önerim, neden girişimci olmaya çalışmıyorsunuz? Benzer problemle karşılaşan birçok insan olabilir. Eğer küçük bir gelir için web siteleri yazabilirsiniz o zaman kesinlikle ondan büyük kazanabilirsiniz.


1
+1 ve girişimci bir ruh çok olumlu bir kalite olarak görülebilir.
maple_shaft

5

Sorununuzun ne olduğunu zaten belirlediniz - baskı altındaki sorunları çözme (biri sizi izlerken ei). Güvensizliğiniz veya yeterli deneyime sahip olmadığınız veya baskı altında çatladığınız için mi?

Deneyim ve pratik yapmak için birçok röportaj yapmak iyi bir fikir olabilir ama aynı zamanda karşı etkiler de yaratabilir. Mülakatlardaki sürekli başarısızlıklar güveninizi daha da sarsabilir, bu yüzden dikkatli olun.

Birisi sizi izlerken problemleri çözmek için rahat edebilmeniz için akran programlamayı denemenizi öneririm. Ayrıca, sizi baskı altında etkili olmaktan alıkoyan şeyi anlamaya çalışın (gerçek testin kendisinden gelen stres, yakın gözetim altında çalışmaktan kaynaklanan stres, belirli bir zaman sınırı altında çalışmaktan kaynaklanan stres vb.).


1
Ayrıca bu tür test sorularının bazılarını google'da da kullanmalısınız. Onları bir röportajda aldığınız şekilde yazdırın ve çözün. Bilgisayarınıza değil bir masaya oturun. Röportajın baskısını yeniden denemeniz ve yeniden oluşturmanız gerekiyor.
Bill Leeper

3

Baskı altında boğulmuş gibi geliyor. Mülakat sürecinin bir parçası olarak zamanlanmış örnekleri yapmanız gerektiğinden, bunun üstesinden nasıl geleceğinizi öğrenmeniz gerekir. Bu, programlama becerisiyle değil, korkuyu yönetmekle ilgilidir.

Bir seçenek, örnek problemler yazma alıştırması yapmak ve kendinize zaman ayırmak olacaktır. On dakikadan daha kısa sürede yapabileceğinizi öğrendikten sonra, daha az zamanlanmış olmaktan korkabilirsiniz.

Başka bir seçenek de korkunuzu yatıştırmak için bir teknik bulmak ve onu boğulmak için kullanmak olacaktır. Bir meditasyon tekniği öğrenmek size yardımcı olabilir. Veya (dan korkuya karşı nakaratı ezberlemek Dune .) Sizin korku tepkisini aşağı çekmek için hile çeşit öğrenin.


3

Henüz kimsenin bunu sormamasına oldukça şaşırdım, ama programlama görevlerine nasıl yaklaşıyorsunuz ?

Basitçe koda giriyorsanız, kendinizi kaybetmenize ve basit hatalar yapmanıza ve kendinizi kızdırmanıza neden olabilirsiniz. Her seferinde bir adım at:

  1. Gereksinimleri toplayın : Tam olarak, görüşmecinizin sorduğu şey nedir. Kodlamadan önce havada sıfır soru olduğundan emin olun . Örneğin, eski "isPalindrome" sorusuyla karşılaşırsanız, "dizede özel karakterler varsa ne olur?" veya "ada" gibi tek uzunluklu dizeler palindrom olarak sayılır mı? ". Sen lüzum bir algoritma tasarlamadan önce gereksinimlerini açıklamak için bilmek.
  2. Algoritmanızı tasarlayın : Mantıklıysa mantıklı bölümlere ayırın. Bunun hakkında konuşun .. Belki beyaz tahta yapıyorsanız bazı sahte kodlar yazın. Mülakatçınızı adımlarınızda gezdirin. İstediğiniz sonuçları aldığınızdan emin olmak için birkaç farklı girişle (hem geçerli hem de geçersiz) çalıştırmayı deneyin.
  3. Şimdi kodlamaya başlayın : Bu noktaya kadar, yazmak üzereyken çok emin olmalısınız. Esasen, bildiğiniz dil ile hareketlerden geçiyor olmalısınız. Bu noktada, bir kuruş değerine sahip görüşmeciler beyaz tahta oturumundaki kişileri affedeceğinden sözdizimsel hataların olup olmadığı gerçekten önemli değil (sorunu çözmek için bir PC / IDE verilirse, bu farklı bir hikaye).

Gerçekten, kodlama problemleriyle uğraşırken, bir görüşmeci harika kodlar için çok fazla şey aramaz. Doğrudan koda dalmak kötü bir şeydir, nokta.

Ayrıca, sorundan bahsederken (gereksinim toplama ve tasarım), biraz daha rahat olacağınızı ve kodlama kısmı sırasında aptalca hata yapma olasılığının daha düşük olduğunu göreceksiniz.


3

Proje Euler

Bana öyle geliyor ki fizzbuz testini geçemiyorsun . Programlamanın temel kavramlarını anlayıp anlamadığınızı belirlemek dışında, genellikle herhangi bir pratik amaca hizmet etmeyen basit algoritmalara dikkat edin.

Temel bilgilerinizle fırçalayın

Ne tavsiye ederim temelleri üzerinde fırça.

http://projecteuler.net/

Kaydolun ve uygulamaya başlayın, bu örnekleri inceleyerek temel programlama kavramlarını daha iyi anlayacağınızı göreceksiniz. Sanırım orada fibonacci dizileri ve diğer matematiksel kavramlarla (tanıdık geliyor) palindrom bir soru bulacaksınız.


2

Görüşme sırasında veya sonrasında geri bildirim isteyin. Ne sevdiler? Ne sevmediler? Cevaplara şaşırabilirsiniz.

Farklı insanlar elbette farklı şeyler ararlar, ancak bir sorunu çözmeye nasıl çalıştığınız genellikle% 100 doğru bir çözüm yazmaktan daha önemlidir. Tüm yanlış şeyler için endişeleniyor olabilirsiniz.

Bir şeyde daha iyi olmanın en iyi yolu pratik yapmaktır. Kısa sorunların bir listesini yazmayı deneyin. Ardından, listedeki her öğe için sorunu çözen küçük bir program yazın. FizzBuzz gibi çok kolay sorunlarla başlayın ve gittikçe zorluğu artırın . Önceki görüşmelerde karşılaştığınız sorunları çözebilir misiniz? İki dizgenin ortak olduğu en büyük alt dizeyi bul? N! 'Nin ana çarpanlarına ayırma işlemini hesaplayın.

Fikir, karşılaşabileceğiniz her sorunun çözümünü öğrenmek değil, kendinize küçük programları hızlı bir şekilde yazmak için biraz pratik vermek ve ayrıca zayıf noktalarınızın nerede olduğunu bulmak için kendinizi geliştirmenizdir. Doğru veri yapısı ile birçok sorunun çözümü kolaydır, ancak aksi halde zordur, bu nedenle veri yapılarında sağlam bir temele sahip olduğunuzdan emin olun.


2

Pratik yapın ve nasıl başa çıkılacağı konusunda size rehberlik edecek birini bulun. Bir avuç denemek gerekebilir, ancak bu konuda geri bildirim ve pratik yapabiliyorsanız, ortaya çıkan şey şaşırtıcı olabilir. Bir işveren bana bir kez beyaz tahta sorunu ele nasıl burada sorunu benzer gibi görünüyor.

Bu tür bir sorun verildiğinde ne yapılacağı ve nasıl konuşulacağı hakkında bir plana sahip olduğu kadar cevapları ezberlemenizi önermiyorum. Bu neye benziyor? Benzer problemler gördünüz mü? Bazı basit yaklaşımlar algoritma açısından ne sağlayabilir? En azından benim önerim bu.


2

Yazılım geliştiricilerin bir kodlama testi yapmaları istendiğinde veya röportajda küçük bir kod parçası yazmaları istendiğinde oldukça yaygındır. Birisinin daha önce de belirttiği gibi, çoğumuz sadece "rahatlık alanımızda" ve 2-5 görüşmeci ile çevrili küçük bir odada oturduğumuzda kodlama yapabiliyoruz, çünkü konforun çoğunu gerçekten eklemiyor.

Cevap üç yönlü:

  • ve daha fazla pratik yapın. bir ay deneyin 30-40 dakikalık bir kağıt ve kalemle programlama yapın ve ne kadar kolay olacağına şaşıracaksınız. Pratik yaparken - röportaj kodlama oturumlarında istenmesini beklediğiniz programlama görevlerini deneyin - örneğin, bir singleton uygulayın, bir dizeyi tersine çevirin, vb. Bu önemsiz kod parçasını okuyun ve neyin yanlış olduğunu bulun. "- yazdırmayı deneyin ve bu çıktıları iki hafta boyunca analiz edin ve bu beceriyi büyük ölçüde geliştireceksiniz.

  • korkunuzu nasıl kontrol edeceğinizi öğrenin. testin çok zor olduğunu düşünüyorsanız ve sadece% 20'sini tamamlayabilirsiniz - bunu% 20 yapın, geri kalanı için endişelenmeyin. Test, bunu yapmak için verilen süre için makul olmayan bir şekilde büyük olabilir (örneğin, röportajdaki erkekler bitirmeniz için 20 dakika vermesi gerekiyordu, ancak bazı üretim patlamaları nedeniyle röportajı 5 dakika içinde tamamlamaları gerekiyor) . Diğer adayların sadece% 10 testini tamamlamayı başarmaları da mümkündür, bu yüzden% 20'yi tamamladıktan sonra diğer adayların önünde olmaya devam edersiniz.

  • Röportajda bir kod yazarken - ilk geçişte mükemmel hale getirme zahmetine girmeyin. "önce en yaygın senaryo olarak da bilinen" mutlu bir yol uygulamak ve daha sonra hata işleme ile uğraşmak. Zamanınız tükeniyorsa - sayfanın alt kısmına kısa bir not ekleyin - daha fazla zamanınız olsaydı kodu geliştirmek için ne yapardınız.

[koşmalıyım, cevabımı daha sonra düzenleyecek / geliştirecek]


1

Birçok insanın söylediği gibi pratik yaptığım en önemli şeylerden biri. Zaten benzer bir sorun yaptıysanız, çözümü hızlı bir şekilde ortaya çıkarabilirsiniz.

Kendi başınıza denemek ve çözmek için sorun yaşıyorsanız, diliniz veya seçiminiz için röportaj sorularını programlamak için Google aramayı kullanmayı deneyin.

Ayrıca, alt düzey CS dersleri vermek için tasarlanmış kitapları da alabilirsiniz. Bu kitapların çoğu, küçük olan ve evde hızlı bir şekilde yapılabilen programlama ödevleriyle doludur. Pratik yapmak için kullanılabilirler.


0

Testlerde de çok kötüyüm ve hep öyleydim. Hayatım boyunca bir programlama sınıfına neden kalem ve kağıt almak için testler verildiğini anlayamadım. Hiç bu kadar iyi olmamıştım. Ancak, yaptığım şey görüşmecilere bu sorunun yaşadığımı ve bunu bildiğimi açıklamaktı. Ayrıca bana aptalca test yapmayan şirketler için röportaj yapmayı başardım.

Benim önerim, röportaja girmeden önce şirkete bu tür testlerle yapmayacağınızı söylemektir, ancak X yerine mutlu olursunuz. (Mantıklı bir alternatif anlayın ve kendinizi rahat hissedin.) Kendim için onlara kod göndermeyi teklif ettim ve bir kez bana yazmak için basit bir program vermelerini önerdim ve bunu benimle birlikte getireceğim 3 gün içinde röportaj.

Nereden iş bulabileceğinize bağlı olarak bu sizin için işe yarayıp yaramayabilir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.