kod kovboy takım


15

Size kıdemli olan ve her zaman diğer insanların projelerine atlayan ve onları gece boyunca ya da hafta sonu tamamlayan bir ekip üyesiyle nasıl başa çıkıyorsunuz? Acil bir durum olup olmadığına bakılmaksızın 80 saat hafta çalışıyor ve yapılacaklar listenizin hangi kısmına bir sonraki grev yapacağını tahmin etmek biraz zor. Bazen iş günleriniz boşa gider çünkü Pazartesi sabahı, önceki haftanın çoğunu üzerinde çalıştığınız projeyi tamamlayan bir check-in bulursunuz.

Kaliteyi soran insanlar için: Genellikle oldukça iyidir, ancak: diğer ekip üyeleri tarafından 'sahip olunan' kod dahil, test kapsamına bakılmaksızın, açık sonuçlar ile ilgili kodun yeniden düzenlenmesi de vardır.


51
Bana detaylarýný vermeye ne dersin, ve ţirketimin onu kaçaklaţtýrmasý için ne yapabileceđimi göreceđim.
Kevin D

7
@ MK01, Howabout "" Yaptığınız katkıları seviyoruz, ancak işi açıkça bölümlere ayırabileceğimiz yolları tartışmak istiyoruz. Eğer kodunuzu ekibin geri kalanıyla kaldırabilirsek, biz Muhtemelen bunu şimdi olduğundan daha hızlı yapabilir. " Büyük bir anahtar şudur: fikri ortaya çıkmış gibi hissettirin.
riwalk

7
Rahatlayın ve yanana kadar bekleyin.
Steven Evers

9
Pazartesi sabahları daha fazla SO zaman planlayabilirsiniz gibi görünüyor.
JeffO

3
Bize söylemediğiniz şey, kodunun kalitesidir. Diğer insanlara aynı, daha büyük veya daha düşük kalitede çözümler mi öneriyor?
David Thornley

Yanıtlar:


17

Bu muhtemelen kısmen şeffaflık sorunudur; muhtemelen zamanını boşa harcamıyor. Yönetimde insanların üzerinde çalıştığı görevleri daha net hale getirme konusunda konuşurdum, böylece bir kişinin o görevde zaten zaman harcadığını daha kolay anlayabilir ve bunun yerine çabalarını odaklanarak hangi görevlerin talep edilmediğini görebilir.

Onunla doğrudan bu konuda yüzleşmem. Yöneticinizle konuşurdum, böylece bazı süreçler devreye sokulabilir. Sorun muhtemelen onunla en görünür olsa da, aynı şeyi yapan başka takım arkadaşları da var (yanlışlıkla başka birinin üzerinde çalıştığı projelere başlıyor). Muhtemelen ona çalışmak için bazı fikirler vermelisiniz, ancak yöneticiniz bu yeni sürece rehberlik etmek için en iyi konumda. Yöneticinizle çalışmak işe yaramazsa, doğrudan onunla konuşmaya devam etmelisiniz - ancak yönetici ile başlardım.

Ekibimiz bu konuyu bir beyaz tahta üzerinde yapılması gereken tüm çalışmalara yapışkan notlar koyarak ele aldı. Her ekip üyesinin üzerinde adı bulunan bir etiket vardı ve çalıştıkları yapışkan notu "devam ediyor" sütununa taşıyacak ve adlarıyla etiketleyecekti. Başka bir kişi bu göreve yardım etmek isterse, görevi talep eden kişi ile görüşmesi ve müzakere etmesi bekleniyordu. Benzer bir sistem sorunlarınızda çok yardımcı olabilir.


17

Gerçekten verimli olduğunu ve "tüm esnaf jack" varsayalım ...

Onun tarzını kucakla. Onu sökün . Ve - onu izole et.

Ayrıca...

Emanet ettiğiniz sorumluluklarla açık olun.
Ekibinizin ondan öğrendiğinden emin olun (örn. Çift programlama mükemmel çalışır).
"Hepsi bir arada" gitmeyin - onu test edin ve işler kötüleşirse yedekleme planınız olduğundan emin olun.

Yapabileceğiniz en kötü şey onun motivasyonunu bertaraf etmektir.


Bunu kendi deneyimlerimden söylüyorum. İstediğim kadar verimli olmayabilirim, ama kesinlikle UI'den kalıcılığa kadar gidebilirim ve kesinlikle kovboy kodlama pratiği yapıyorum (ki bu kesinlikle çift uçlu kılıçtır).

Yalnız oldukça umutsuz bir projeye atıldım (işleri daha da eğlenceli hale getirdim - hepsini yeniden yazmayı önerdim ve bunu kabul ettim), işler iyi gidiyor ve onu seviyorum. Hatalardan ötürü suçlanacak kimse yok. Spontane olarak her şeyi biraz yeniden düzenlemeye karar verdiğimde sızlanacak kimse yok .

Aslında - bu özgürlük hala burada çalışmamın tek sebebi.


9

Sanırım daha kötü problemler var. Her ne kadar sizin (ya da ekibinizdeki başkalarının) işi önemli olmalı ve işinin sonuçları, bir kişinin takıma yaptığı katkıyı etkili bir şekilde ortadan kaldırıyor gibi görünüyor.

Tahminimce takım üzerindeki etkisini fark etmiyor; aksine, yaptığı katkılar muhtemelen onu takım için değerli hissettiriyor.

Çözüm (IMHO): onunla doğrudan yüzleşin. Tabii ki, diplomatik ve yaptığı katkıları ve fedakarlıkları takdir edin (80 saat çılgın bir çalışma haftasıdır ve kişisel hayatında oldukça çirkin bir fedakarlık olmadan gerçekleşemez).

Ancak, iş arkadaşlarını yabancılaştırmayacak şekilde davranmak onun sorumluluğundadır - genç veya başka türlü. Ve takımdaki herkes çabalarının anlamlı olduğunu hissetmeyi hak ediyor - sonuçta, varlıkları anlamsız olsaydı neden her gün işe gitmek istesin ki?


OP'nin SO / SE'deki profiline baktıktan sonra biliyorsunuz. Madalyonun diğer tarafına bakmaya başlıyorum. Ayrıca, gençlerin büyümesine / gelişmesine izin vermemenin temel noktası nedeniyle.Sadece gençler sizi değiştirecek kadar iyi olduklarında, şov varlığınız olmadan bile devam edebilir. Yani +1
Aditya P

9

Ona çok daha fazla iş vermeyi düşünün , o yüzden seninkini aramasına gerek yok!


6

Takımın geri kalanı çok yavaş hareket ettiği veya patron istediği için “içeri girip bitirmesi” mümkün mü?

Bunun ne kadarı baypas edilmeyle ilgili bir sıkıntı ve ne kadar daha üretken (mutlaka daha iyi değil) bir kodlayıcı tarafından "ne kadar gösteriliyor"?


4

Diğer insanların bunu sinir bozucu bulduğunu biliyor mu? Projelerinizi bitirmeyi tercih edeceğinizi söyleyerek, onunla dokunarak büyütmenizi öneririm. Bu işe yaramazsa veya bunu size kıdemli biriyle yükseltmek konusunda rahatsızlık duyuyorsanız, bu yönetim için bir durumdur. Projeleri olduğu için tamamlamıyorsanız, yönetici durumu bilmiyorsa yavaşlamış gibi görünebilir.

Ayrıca, diğerlerinin de söylediği gibi, kendinizi geliştirmek için nasıl çalıştığına bakın. Sorunlarını nasıl çözdüğünü görmek için onun checkin'lerine bakın - belki de kendinizi düşünmeyeceğiniz akıllıca bir düzeltmeydi. Üst düzey geliştiricilerin kod tabanını sizden çok daha yakından tanıdıklarını unutmayın. Onlar için önemsiz görünen şeyler yeni geliştiricilerin keşfetmesi gerçekten zor olabilir.


7
Tercihen 80 saatlik programlamada çalışan herkesin sosyal beceriler konusunda biraz kısa olması muhtemeldir.
David Thornley

4

Size kıdemli olan ve her zaman diğer insanların projelerine atlayan ve onları gece boyunca ya da hafta sonu tamamlayan bir ekip üyesiyle nasıl başa çıkıyorsunuz?

Daha hızlı mı çalışıyorsunuz?

Acil bir durum olup olmadığına bakılmaksızın 80 saat hafta çalışıyor ve yapılacaklar listenizin hangi kısmına bir sonraki grev yapacağını tahmin etmek biraz zor.

Tanım olarak, yapılacaklar listenizdeyse - yapılmaz. Eğer tamamlarsa yapılacaklar listenizden geçin.

Bazen iş günleriniz boşa gider çünkü Pazartesi sabahı, önceki haftanın çoğunu üzerinde çalıştığınız projeyi tamamlayan bir check-in bulursunuz.

Buna normalde ekip çalışması denir - gittiği yönü beğenmedikçe, sorun nedir?

Kaliteyi soran insanlar için: Genellikle oldukça iyidir, ancak: diğer ekip üyeleri tarafından 'sahip olunan' kod dahil, test kapsamına bakılmaksızın, açık sonuçlar ile ilgili kodun yeniden düzenlenmesi de vardır.

"Sahip olunan" ve kod birlikte gitmez. Eğer ayak uydurmakta zorluk çekiyorsanız, ondan size açıklamasını isteyin. Oldukça üretken gibi göründüğünden, size danışmanlık yapmasını isteyin. İlişkiden yararlanın ve birlikte çalışın.

Test kapsamına gelince, kuruluşunuzda bir standart varsa - liderinizi / yöneticinizi getirin. Çabuk, ama kalitesiz, iş kimsenin işine yaramaz. Yine de, sizden 10 kat daha üretken ise - sonunda ondan sonra temizlik yapmakla uğraşabilirsiniz. Bu durumda, onunla bir ilişkiye daha fazla yatırım yapın.


İdeal ekip üyesi gibi geliyor ... Ne üzerinde çalıştığını / bitirdiğini netleştiriyor, ekibin her üyesine yardım ediyor, vb.
Augury

3
  • Ondan öğrenin ve çalışma hızınızı artırmaya çalışın.
  • İşinizin gecikmesi ihtimali olabilir.
  • Sahnenin arkasında ya da üst düzey olduğu için yönetim beklentisinin gerekçesiyle bilginizin üzerinde daha fazla şey olabilir.
  • Yapacak daha iyi bir şeyi olmayabileceğini düşünebilirsiniz, çoğu zaman bu olası değildir.
  • Acil durumun farkında olmayabilirsiniz.
  • Bu, yönetim veya kıdemli tarafından performansınıza bir ipucu olabilir.

Her iki durumda da en iyisi önce kendinizi değerlendirmeye başlarsınız. Onunla "Anlaşma" çabalarınız yönetimi ile iyi çalışmayabilir.


3

Memnuniyetini problemleri çözmekten ve kahraman olmaktan açıkça alıyor - ki bu iyi, ancak (takımının lideri, ama bu arada sen) bunu kullanmanın bir yolunu bulmalısın.

Anahtar şeyler bana sıçrar:

  • İşi diğerlerinden daha hızlı yapma yeteneği var (kodunun kötü olduğu hakkında hiçbir şey ima etmediniz)

Yani onu kullan. Bir sonraki projenizde, ona bir şeyler yapmasını önerin. Bu şekilde ne yapmayı planladığını bilirsiniz. Memnuniyeti problemleri çözmekten geliyorsa, ona arka planda yapıyormuş gibi teklif ederseniz o kadar mutlu olacaktır.

Belki de daha iyisini yapın, resmileştirin, çünkü bir ekip ekstra yapmak isteyen herkes için kapmak için bir iş hazırladı - bu şekilde çalma unsuru gitti ve herkes kazanacak.


1
DeMarco kitaplarını okursanız, iyi ve çok iyi olmayan geliştiricilerin üretebileceği miktar arasında yaklaşık 10: 1 oran olduğunu göreceksiniz. Yapmak istediğiniz son şey, diğerlerinden daha fazla iş yapan aykırı sakatlamak, bu enerjiden yararlanmanız ve onu en iyi şekilde yapacağınız yere yönlendirmeniz gerekir.
quickly_now

2

Çift programlama yaparak takıma başlayın.

Öncelikle, çift programlama, özellikle tüm hafta sonu kendi başına çalışmayı seven içe dönük geliştiriciler için yorucu. Hafta sonları olması gerektiği gibi dinlenmek için değerli olacak.

İkincisi, (daha acemi geliştiriciler sürdüğü sürece) bilgiyi aktaracak ve böylece şaşırtıcı yeteneklerini ekibin geri kalanına yayacak.

Üçüncüsü, şu anda sizin adınıza taşıdığı büyük riski azaltacaktır, böylece birden fazla ekip üyesi ne bildiğini bilir.

Dördüncüsü, o ve ekibin geri kalanı üzerinde neler çalışıldığı hakkında daha iyi bir fikre sahip olacak. Bunu bir ekip olarak tüm özellikleri bir araya getirerek birleştirebilirseniz, devam etmekte olan daha az iş olacak ve check-in öncesinde daha az çalışma şansı olacaktır.

Beşinci olarak, bir takımın parçası olarak oynamayı öğrenecek . Yarattığı motivasyonun, diğer ekip üyelerinin çalışmalarının tekrarlanmasıyla birlikte ürettiğinden daha pahalıya mal olması tamamen mümkündür. Verimlilik! = Etkinlik.

Altıncı olarak, kod kalitesi genellikle geliştirici çifti eşleştiğinde artar. Güzel bir yan etki.


1

İnsanların ne yaptığını ve ilerlemelerini biliyor mu? Yönetim, başkalarından iş kopyalamaması için ona yön verebilir mi? Belki de o sadece başkalarının yapamayacağı şeyleri bilmenin yönünü kullanabilecek bir işkolik olduğu için, yönetimi getirmeden önce 1: 1 konuşma yapmayı önerebilirim. yapmak.

İşinizin boşa harcanmasına gelince, diğer perspektiflerden bakın. Yaptıklarınızdan neler öğrenebilirsiniz? Hangi parçaları yapmadınız ve nasıl yaptı? Başka birinin bir şey yapmak için kredi alabilmesi nedeniyle, tüm kan, ter ve gözyaşlarının hiçbir şey için olduğunu düşünmeyin.


0

Kovboy hevesli görünüyor. Yönetime yaklaşırdım, böylece ona bir ton iş verebilirler ve kendi eşyalarınızı yapmanıza izin verirler. Ancak, kovboydan belki bir iki şey öğrenebilirsiniz. 80 saatlik çalışma haftalarının norm olması gerektiğini söylemiyorum (açıkçası bu bir abartıdır), ancak işyerinde fazla mesai yapmak büyük bir kurumsal ortamda oldukça normaldir.


5
Uzun programlama saatlerine koymak uzun vadede genellikle ters etki yaratır.
David Thornley

@David: Eğer her Cuma günü verildiysen değil :)
Brian

2
@ 0A0D: Bu esneklik, "işe fazladan saat
ayırmak

3
@OAOD: İnsanların düzenli olarak telafi edilmeyen fazla mesai yaptığı herhangi bir dükkan bir ter dükkanıdır.
bit-twiddler

@ bit-twiddler: Maaşlı çalışanları hiç duymadınız mı?
Brian
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.