Müşterilerden yanlış yolda geçirilen saatleri ücretlendirmeli misiniz? [kapalı]


17

Bir müşteri için çözmek için küçük bir CSS meydan okuması aldım ve saatlik ücret ödeyeceğim. Sonunda çözdüm, 5 saat sürdü, ancak zamanın yaklaşık% 25'ini yanlış yolda geçirdim, sadece son tarayıcılarda çalışan bir CSS3 çözümünü denedim ve nihayet JS (hiç de düşündüğüm gibi) üzerinden geri dönüşün mümkün olmadığını keşfettim. Müşteriye bu% 25'i ücretlendirmeli miyim?

Daha fazla detay: Bir tahmin vermedim, meydan okumayı kendim sevdim, bu yüzden bir tahmin vermeden önce üzerinde çalışmaya başladım (ama daha önce onunla çalıştım, bu yüzden gerçekçi olmayan beklentileri olan insanlardan biri olmadığını biliyorum. ). En kötüsü, merak uyandırıcı bir CSS mücadelesinde 5 ücretsiz saat geçirdim. Ve her ikimiz için de mümkün olan en adil tahmini vereceğim, çünkü işi zaten yapmış olacağım. :)

Edit: Hepinize teşekkür ederim, keşke birden fazla cevap kabul edebilseydim! Ekstra saatler için onu faturalandırmadım (3 buçuk dolar fatura ettim), ama onlardan bahsettim, böylece onu faturalandırdığımdan daha fazla çalıştığımı biliyor. Belki de bu yüzden "tahmini" hemen kabul etti (bu durumda bir tahmin değildi, bu yüzden alıntılar).


Müşterinize hangi başlangıç ​​tahminini yaptınız?
JK

2
Müşteriden daha fazla iş yapmayı umuyor musunuz? Ne tür bir ilişki kurmak istiyorsunuz?
Steve Jackson



1
Bu bir kopya değil, sorumu göndermeden önce bu konuyu okudum. Yeni şeyler öğrenmekten bahsediyor , yanlış çözüm üzerinde çalışmıyor .
Lea Verou

Yanıtlar:


24

Sık sık bir şeyler yapmak için birkaç saat harcadığımda, daha kolay tek satırlık bir çözüm olduğunu ya da ilk fikrimin çok kötü olduğunu fark ettiğimde böyle durumlar yaşıyorum.

Genel olarak, bu durumlarda, üç durum arasında fark yaratırım:

  • Yeni keşfedilen çözüm açık değildi ve / veya ortalama bir geliştirici muhtemelen yanlış yolda olabilir ve / veya yanlış çözüm son çözümü bulmak için bir önkoşuldur. Bu durumda, müşteriyi yanlış yolda harcanan süre için ücretlendiririm.

  • Yeni keşfedilen çözüm çok açık değildi, ancak muhtemelen birçok ortalama geliştirici doğrudan bu şekilde gidecekti. Başka bir deyişle, kod yazmaya başlamadan önce daha iyi düşünürsem, muhtemelen nihai çözümü doğrudan bulabilirdim ya da belki bulamazdım. Bu durumda, müşteriyi ücretlendiririm, ancak fiyatı yarı yarıya veya en uygun görünen yüzde olarak düşürürüm.

  • Açıkçası, çok aptalca, çok uykulu ya da kod yazmaya başlamadan önce hiç düşünmemiştim, çünkü son çözümü bulmak son derece kolaydı. Bu durumda, iki günü yanlış yolda geçirsem bile, bu benim sorumluluğumdur ve müşterinin bunun için ödeme yapması gerekmez.


"Ortalama" geliştiricilerin bunu çözeceğini sanmıyorum. Ancak ortalama CSS deneyiminden daha fazlasına sahip olanlar için muhtemelen 2. olur.
Lea Verou

1
@Lea Verou: "ortalama geliştiriciler" hakkında konuştuğumda çok öznel. Ayrıca seviyenize ve müşterinizin seviyeniz hakkında ne düşündüğüne de bağlıdır. Müşteriniz en iyinin en iyisi olduğunuzu biliyorsa ve size günde binlerce dolar ödüyorsa, öznel "ortalama", müşterinizin bir kod maymunu olduğunuzu düşündüğünden çok daha yüksek olacaktır.
Arseni Mourzenko

Eh, CSS hakkında büyük konferanslar hakkında konuşuyorum ve o biliyor :) Ama kesinlikle günde binlerce dolar yapmıyorum: p (yapan herhangi bir web geliştirici var mı?)
Lea Verou

4
Ayrıca oranınızı ne kadar dikkate alacağım. Oranınız çok yüksekse, ortalamadan daha iyi olmanız beklenir, bu nedenle bariz çok daha fazla şey anlamına gelebilir. Ücretin sonra çok düşükse edilir DEĞİL bu daha az şeyler ortada ortalamanın üzerinde olması bekleniyor.
Martin York

başka bir yerde yaptığım yorum kopyalamak-yapıştırmak için: çalışma / düşünme / araştırma / bir sorunu optimize etmek için harcanan zaman bir sorun üzerinde çalışılan zamandır . AMA ya sth için zaman harcayan (hakkında işe alınan göreve) bilmeli ve / veya zaten çözülmüş (ve ne istenir). Başka bir deyişle, bilgi eksikliği ya da sadece kötü profesyonel çalışma için bir bahane yoktur. Not , o gerçek bir profesyonel kutu (ve) gerçekten ne kadar zaman harcandığını ve neden için bir convinsing dava haline
Nikos M.

33

Yanlış yolda olduğunu sanmıyorum. Bir çözümü kodladınız, çözümü (kudos) test ettiniz ve beklediğiniz gibi çalışmadığını gördünüz. Çözümü ayıkladınız ve daha sonra farklı bir yöne giderek düzeltmenizi yaptınız.

IMHO, bu yanlış yol değil. Bu düzenli yazılım geliştirme.

Ben olsaydım, tam 4 saat boyunca ücret alırdım.


1
Düşündüğün gibi: p :)
Lea Verou

2
Doğası gereği araştırma / tasarımın yanlış dönüşlerin bile önemli olduğu bir alan olduğuna katılıyorum. Bir şeyin işe yaramadığını göstermek (ve iz bırakmak), bir sonraki adam bunu denemeyeceğinden bakımı kolaylaştırır.
Matthieu M.Mar

1
Diğer tüm meslekler böyle yapar. Sadece programcılar, müşterinin sorunu üzerinde çalışılan tüm saatler için faturalandırmama hakkında düşünmek için "asil" (ya da düz, naif).
quant_dev

8

Çoğu program yazıyoruz, yazıyoruz çünkü bir çözüm hemen, kolay erişilebilir değil. Yaptığımız her şey yeni bir şey öğrenmeyi içeriyor. Müşteri size ürün için ödeme yapmıyordu. Ürünü nasıl inşa edeceğinizi ve sonuçları verdiğiniz için size para ödüyordu (ve eğer ona "meydan okuma" olarak adlandırdıysa, bir şeyler öğrenmenizi bekliyordu). Tom de Marco ve Timothy Lister'ın “Ayılarla Walking” başlıklı makalesine bakın - "Bir projenin riski yoksa, yapma".

Müşteriye düzgün bir şekilde geri ödeme yapmak istiyorsanız, çözümünüzü işe yaramayan çözümlerin ayrıntılarıyla birlikte gönderin, böylece bunları işe aldığı diğer personele aktarabilir ve daha az zaman almalarına yardımcı olabilir.

Çok fazla ödeme yaptığını düşünüyorsa müzakere etmek size kalmış. Kesinlikle, başka bir yerde kolayca kullanılamayan herhangi bir öğrenme için ödeme yapmasını beklerdim.


Buna bir meydan okuma demiyordu, bunun bir fikri olduğu konusunda hiçbir fikri yoktu. (muhtemelen dış kaynak kullanımına karar vermekte zorlanmasına rağmen)
Lea Verou

Downvoter'lar bunun neden indirildiğini açıklarlar mı?
Lunivore

5

Bazen bir problemi çözmek, bir dizi makul seçeneğin optimal olmayan çözümlerini ortadan kaldırmayı içerir. Eliminasyon süreci problem çözme araçlarınızdan biridir; müşteri size bir çözüm için ödeme yapar ve hizmetinizdeki araçları kullanmanızı beklemelidir.

Hızlı ve en iyi backspace içermeyen bir kod akışı yayınladığınız doğrudan proje brifinginden klavyenize doğru yürürken en iyi çözümü anında hayal etmenizi bekleyen mantıksız bir müşteri olacaktır. Yani böyle müşteriler yok demek değil. Ben aslında sadece "programlama, hata ayıklama" için ödeme yaptığını doğrulamak için projenin ortasında arayan müşteri vardı. Ve elbette, programlama fiziksel yazma eylemi olan müşteriler (veya patronlar) vardır.

Kör sokağınız müşterinin en iyi harcanan parasını temsil edebilir: başka bir geliştirici sizin kadar kapsamlı olmayabilir ve gelecekte geri gelecek daha ucuz ama daha az uyumlu bir çözüm sunmuş olabilir.


2
Bu "programlama, hata ayıklama değil" zihniyete sahip bu adamlar koşmak nefret ediyorum. Sanki bir yazar bir hikayeyi tekrar okumadan ve değişiklik yapmadan yazmaya başlayabilirmiş gibi. Bu şekilde yazılırsa bu muhtemelen berbat bir hikaye olur :-).
Htbaa

5

bu sorular beni deli ediyor ...

bir tamirci veya avukat davanız / probleminiz üzerinde çalışmak için zaman harcadıysa, yanlış yol üzerinde zaman harcamış olsalar bile, tahsil edeceğiniz @ $$ hesabınıza bahis oynarsınız

programcıların zamanlarına daha fazla değer vermeye başlaması gerekiyor


(dolayısıyla +1) çalışma / düşünme / araştırma / bir sorunu optimize zaman harcanan zaman bir sorun üzerinde çalıştı kabul ediyorum . AMA ya sth için zaman harcayan (hakkında işe alınan göreve) bilmeli ve / veya zaten çözülmüş (ve ne istenir). Başka bir deyişle, bu bilgi eksikliği veya sadece kötü profesyonel iş için bir bahane değildir. Gerçek bir profesyonel kutu (ve) gerçekten ne kadar zaman harcandığını ve neden için bir convinsing dava haline geldiğini hatırlatırız
Nikos M.

5

Yaptığınız şey gayet normaldi. Fred Brooks bu fenomeni "Mythical Man-Month" adlı yazılım mühendisliği ile ilgili seminal kitabının "Uzaklaşmayı Planla" bölümünde tartışıyor.

Bir zaman ve malzeme sözleşmesi üzerinde çalışıyordunuz; bu nedenle, projede çalışmak için harcadığı süre boyunca müvekkilinden ücret almalısınız. Yatırım için yeterli değer alıp almadığını belirlemek müşterinin sorumluluğundadır.


4

Bu şekilde bakıyorum: Günün sonunda, ne ücretlendirdiğiniz sizin çağrınız. Müşteriyi ne kadar mutlu etmek istediğiniz, var olan ilişki, satış becerileriniz, vs. gibi birçok değişken var ... hepimiz onları tanıyoruz. Nihayetinde müşteriye sunduğunuz şey ve gerçekten istedikleri değerdir. Müşteriye ne kadar değer verdiniz ve onlara sunduğunuz çözüm / çıktı nedir?

Bir sorunu çözmeniz 10 dakika sürebilir, ancak bu sorunun nasıl çözüleceğini öğrenmek 10 yılınızı aldı. Bu dikkate alınmayı hak ediyor. Aynı zamanda, bazılarımız "iş başında" tazminatını öğrenme yeteneğini düşünüyoruz. Sık sık bir şeyler öğreniyorum, gerçekten müşterinin kurbanında olan bir tür parasal olmayan tazminat olduğunu düşünüyorum.

Ayrıca faturaya ekleyebilir, daha sonra faturada "tercih edilen müşteri indirimi" olarak işaretleyebilir, ücret almaz ve iyi niyet oluşturmazsınız. Bunu her seferinde yaparım, bu da müşteriyi iyi hissettirir.

Ayrıca, günde binlerce dolar kazanan geliştiriciler varsa, sorunun cevabı evet. Siz de yeteneklerinizle onlardan biri olmalısınız. Neredeyse oradayım ve CSS'de sizinle aynı ligde olmaya yakınım.


1
+1, bu cevap çok az. En yüksek oyu alan cevapların her ikisi de "müşteri için çözümün değeri nedir?" Heck, bazen bir müşteriye gerçekten sahip olduğumuz çabanın 3 katı ücret alıyoruz, çünkü bu onun için bir rakipten alabileceği herhangi bir çözümden daha ucuz olabilir.
Doc Brown

2

Bu orijinal anlaşmaya bağlıdır.

Bunu teslim edip gitmeye hazır olduğunu söyledin mi? O zaman onu geliştirmek için harcadığınız her zaman için daha iyi ücret. Hepsini!


2

Sizin için bir dava açması için bir avukat tuttuysanız ve onlar için dava açıp kaybederseniz, yine de faturalarını ödersiniz.

Diğer tüm meslekler böyle yapar. Programcıların başka türlü yapmasının bir nedeni yoktur.

Müşteri çok fazla ödeme yaptığını düşünürse, size geri dönmeyecektir. Onları tekrar müşteri olarak tutmak, çalışılan tüm saatler için faturalandırmamanın tek mantıklı nedenidir.


1

Eğer bana yeni bir teknoloji öğretirken birisinin bana ödeme yapması için özel olarak aldığım bir proje ise, bunu normalde zamanımı faturalandırdığımdan daha azıyla yapmaya eğilimliyim. Öte yandan, çok düşük teklif veremezsiniz, ya da o müşteri ile sonsuza kadar tutacaktır ("Hey, gerçekten harika bir şey yaptığınızda, bundan daha az ücret aldınız!") Aksi takdirde, yapmıyorum t Ben berbat nerede zaman fatura ve çok uzun sürdü.

Bu kuralın istisnası: Sorunun çözülmesinin saatler sürmesinin nedeni, müşterinin kırdıkları bir şey hakkında bana boğmasıydı, her şey için ücret alacağım.


1

Normalde bu açıkça benim hatam olsaydı şarj olmaz ve ben sadece mastürbasyon, ama ben hiç iş akıllı değilim. Çoğu iş zeki insanının, müşterilerin sadece bir sonuç değil , zamanları için ödediği bu felsefeyi uyguladığını gördüm . Kariyerimde, geçmişe baktığımda, bu şekilde düşünmediğim için pişman olduğum birçok kez var. Düşündüğüm tek şey, sonucun değere sahip olmasıydı, son sonucu iyileştirmedikçe zamanım anlamsızdı. Yine de, sürüklenip müşterilerin fikrini değiştirmesi, size atanan ve çalışmanızı geciktiren hatalara neden olan iş arkadaşlarının bir sonucu olarak çok fazla zaman harcanabilirdi, örneğin, sadece biraz daha fazla araştırmaya ihtiyacınız olduğu için değil gerçekten ne yaptığınızı bilmek için.

Kuralları bükmeye ve ne tür bir çalışma süresinin ödenmesi gerektiğine ve neyin ücretsiz olması gerektiğine istisna yapmaya başladığınızda, nihayetinde faydalanmak kolay olabilir. Zaman, ödeme için kullanılacak en kolay metriktir. Sizi sorumsuz görünebilecek birçok karmaşık sorumluluktan kurtarır, ancak sizi çekilmekten ve müşterinin sorumsuzluğunun bazı ödeme kesintilerine yol açmasını önler.

Benim durumumda, sık sık böyle bir şey üzerinde çalıştığım için yanlış yola gitmek için ücret alamazsam umutsuz olurdu:

resim açıklamasını buraya girin

... sektörde yerleşik olan ve hala bu büyük şirketler kadar rekabetçi iken daha sezgisel sonuçlar sağlamaya çalışarak Microsoft ve Pixar gibi şirketler tarafından tekrar tekrar geliştirilen yaklaşık 40 yıllık bir Catmull-Clark alt bölüm algoritmasını yenmeye çalışıyor hız-bilge.

Böyle durumlarda zamanın% 95'i yanlış rotadan gidiyorum, başarısızlıktan sonra başarısızlıktan sonra sürekli olarak beyaz tahtaya geri dönüyorum. Eğer başarısızlığım için ücret alamazsam, zaten evsiz olurdum. Daha önce hiç kimse bu şeyleri daha önce denemediğimde çalışmamın yarısından fazlasını araştırma olarak görüyorum ve ilk denemede (belki de 20. denemede) bir çözümle başa çıkmak için mükemmel bir yaklaşım bulamıyorum. Bana göre amaç hiçbir zaman ilk denemede başarılı olmak değil, mümkün olan en kısa zamanda başarısız olmaktı, başarısızlıktan sonraki her başarısızlık, gerçekten dünyayı değiştirebilecek doğru çözümün ne olabileceğine dair bazı ipuçları veriyor.

Herkes, müşterilerin yeni kurulan bir projeye başladığınız için orada en köklü teknikleri yenmenizi istediği ve beklediği böyle bir Ar-Ge yoğun alanda çalışmıyor olabilir, ancak bana göre programlama nasıl olursa olsun oldukça rutin değildir. basit ve kurulmuş bir çözümdür. Parçaları nasıl tasarlayıp entegre edeceğiniz hala benzersiz olacak, her zaman kendi içinde bir tür sanat, mekanik değil, mükemmel bilimsel değil, artıları ve eksileri sağlıyor, aksi takdirde robotlar bunu yapabilirdi. Bu yüzden kaçınılmaz olarak burada ve orada bazı yanlış rotalara gitmek için ücret almak zorunda kalacağız, yoksa sadece yüzlerce kez yaptığımız en rutin işten kâr elde edebiliriz. çözüm her seferinde, bu durumda kopyala ve yapıştır düğmesine basmak için şarj oluruz.

Tahmin edilemez

Başka bir şey, programlamanın her zaman zor, öngörülemez, asla oldukça rutin olmamasıdır. Bir araba kazası gibi bir şey dışında her şeyin açıklanabileceği rutin pizza teslimatı gibi değil (maalesef programcının pizza teslimat tahminlerine tahmin ettiği ve aslında yaptığımız tek işin yazdığını düşündüğü bir kez bir patron altında çalıştım) . Sitede öğreniyor, her zaman - birileri bana tekrar tekrar bir çabuk sıralama gibi uygulamak için para vermedikçe, tamamen rutin hale geldiğini hayal edemiyorum. Her zaman orada bazı deneyler ve öğrenme olacak ve aşırı olmadığı sürece, bu konuda suçlu hissetmeye gerek yok.

Sık sık bir çiftçi ya da bir şey olmayı hayal ettim, böylece her zaman mevcut bilgimin sınırlarını zorlamadan değil, işimde çok daha rutin hareketler bulabilirdim. Bunun yerine hayatımı iş dışında olabildiğince rutin ve sıradan yaparak telafi etmeye çalışıyorum, akıl sağlığına uğruna bir yere öngörülebilirlik ve rutin hareketler ekledim. İşyerinde - Yeterince iş buluyorum.

Yeni şeyler öğrenmekten bahsediyor, yanlış çözüm üzerinde çalışmıyor.

Yanlış çözüm üzerinde çalışmak yeni şeyler öğrenmek, öyle değil mi? Başlarken bunun yanlış bir çözüm olduğunu biliyor muydunuz, yoksa umutsuzca yanlış olduğunu bildiğinizden sonra da sürekli olarak üzerinde durmaya devam ettiniz mi? Umarım ikincisi değil. Genellikle öğrenme süreci hatalarla olur. En iyi öğretmen. Bulduğum en etkili strateji, mümkün olan en kısa sürede hata yapmak, gerçekten, her şeyi onlara teslim etmeden ve bu tür çözümlerle evlenmeden önce mümkün olan en kısa sürede hatalar olduklarını keşfetmek. % 100'e yakın bir kesinlik ile tahmin ve hataların yapılmasıdır. Sadece gerçekten geç keşfedildiklerinde pahalıdırlar.


0

Bu gerçekten projeyi nasıl önerdiğinize ve projenin nasıl faturalandırılabilir olduğuna bağlıdır.

Örneğin, teslim edilebilir bir sözleşme ise, yeni bir şey öğrenmek için bile olsa, tüm saatler projeye göre izlenmelidir.

Zaman ve malzeme tabanlı sözleşme ise, buna karşı çok daha duyarlı olmanız gerekir. Örneğin, sorun bağlamındaysanız ve sorun yaşıyorsanız, faturalandırılabilir olmalıdır. Bunun bir örneği, eski bir API veya biraz kod öğreniyorsanız ve kodunuzla çalışmayı sağlamaya çalışıyorsanız.

Ancak bir şey yapmaya çalışırken yan izli alırsanız veya sadece yeni bir yolla nasıl yapıldığını öğrenmek istiyorsanız, o zaman sadece gerçek çözümü uygulamak için harcadığım zamanı değil, faturalandırırdım.

Lunivore'a, bize bir şeyler öğrenmek için para verdiklerine katılmıyorum. Uzmanlığımız ve çoğu zaman bunu nasıl yapacağımızı bilmemiz gerektiği için bize ödeme yapıyorlar. Uygulama için bize para veriyorlar.

Kısacası, ilk tahmininiz problemi öğrenmek için gereken süreyi içermiyorsa, muhtemelen bunun için faturalandırmamalısınız. Bir öğrenme deneyimi olarak tebeşirleyin ve bir dahaki sefere bu gecikmeye sahip olmayacağınızı bilin.

Düzenleme: Daha sonra herhangi bir tahmin olduğunu belirttiğiniz için, bu tekrar müşteri olacağını düşünüyorsanız kesinlikle o zaman dahil olmaz. Ayrıca gelecekte her zaman açık bir tahmin yapacağım.


-1

Bunu aşmak için, kötü bir durum olacağını düşünüyorum ve "kötü" dava tarafından belirlenen bir teklif maksimum ile alması gerektiğini düşündüğüm bir saatlik dayalı teklif anlıyorum. Bu şekilde ikimiz de kazananız.


Bu kadar sevmiyorum, çünkü "kötü" bir durum olmaması durumunda müşteri her zaman kaybeder.
Lea Verou

"kötü" vaka ile "en kötü" vaka arasında bir fark vardır. En kötü durum ise, kaybı alırım.
Dave

Hmm, güzel nokta. Ama yine de, ya "iyi" bir dava ise?
Lea Verou

o zaman saat başı. Saatten x saate kadar x tutarında ücretlendireceğim.
Dave
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.