Z mojego doświadczenia: nigdy nie pracuj za pieniądze dla członków rodziny, z którymi musisz spędzać wakacje lub przyjaciół, których chcesz zatrzymać. Jedna z zaangażowanych stron zawsze będzie miała wrażenie, że druga strona albo pobiera za dużo, albo nie płaci wystarczająco dużo, i że wyświadczyła drugiej stronie przysługę. Kiedy zbliża się termin, zwykle są najmniej wyrozumiali i zwykle są dupkami podczas testów beta, ponieważ jeśli masz błąd - który zechcesz - nie zrozumieją. Zawsze jest bałagan.
Kiedyś byłem idealistą i uważałem, że wszyscy potrzebowali po prostu lepszych umiejętności ludzi, ale nie, tak po prostu jest. Ludzie, którzy nie rozumieją procesu tworzenia oprogramowania, ZAWSZE będą wariować, gdy coś nie spełni ich oczekiwań, gdy tylko to zobaczą. Dotyczy to zarówno menedżerów projektów, jak i członków rodziny. Problem polega na tym, że musisz utrzymywać relacje z rodziną i przyjaciółmi, a rzeczy nigdy nie są ściśle biznesowe.
To powiedziawszy, jeśli projekt ma zwiększyć poziom stresu i nie potrzebujesz pieniędzy, to po co je brać? Zwłaszcza jeśli masz już pracę programistyczną, w której chcesz się wyróżniać, powiedziałbym, że powinieneś poświęcić tyle wysiłku pracy na bycie doskonałym w swojej codziennej pracy, ponieważ to tam ostatecznie zostaniesz nagrodzony za pracę wysokiej jakości.
Jeśli potrzebujesz pieniędzy i nie masz nic przeciwko potencjalnej stracie przyjaciela rodziny, to podejmij pracę. Najgorsze, co może się zdarzyć - inne niż rzeczy, o których wspomniałem wcześniej - polega na tym, że dowiadujesz się, kim jesteś i nie jesteś dobry, lub dowiadujesz się, że gryziesz więcej, niż możesz żuć, co powoduje, że projekt jest zły ból głowy z powodu twojego braku doświadczenia. Zrobiłem to dwa razy z moją obecną pracą - na szczęście bardzo rozumiem pracodawców. Choć nędznie czułem się martwy w wodzie, okazało się, że jestem znacznie lepszym programistą z dużo szerszym zestawem umiejętności niż wcześniej.
Nie ma rachunku służącego do określenia, które prace pozostawić i zachować, tylko doświadczenie i swoją osobowość. Musisz tylko zdecydować, co cenisz i dążyć do tego. Rzeczy do rozważenia:
Czy to projekt, który sprawi mi przyjemność? Czy zespół to zespół, z którym lubię pracować?
Jaki rodzaj płatności będą oferować? Jeśli nie, to jaki rozwój zawodowy otrzymam? Czy oferują jakiekolwiek wspólne ryzyko (tj. Opcje na akcje, procent zysków)? To dla mnie duży perswaader.
Tak czy inaczej, są to tylko zasady, które należy stosować przy podejmowaniu decyzji. Wszystko zależy od tego, co cenisz. Na przykład cenię sobie wyzwania intelektualne i czas spędzany z rodziną, dlatego zwykle przywiązuję dużą wagę do tego, czym jest projekt i umiejętności, których się nauczy. Jednak upewniam się również z góry, że pracuję tylko 2 lub 3 noce w tygodniu, aby móc spędzać czas z żoną i dziećmi, ponieważ pracuję już cały dzień. Dostosowuję termin, aby spełnić to żądanie. Jeśli im się to nie podoba, to nie podejmę pracy.
Cokolwiek zrobisz, upewnij się, że jasno określisz, co zrobisz, a czego nie zrobisz, i upewnij się, że jasno określają swoje oczekiwania przed podjęciem pracy. Najgorsze, co może się zdarzyć, to mieć niepotwierdzone oczekiwania klienta i nie docenić tych oczekiwań.
PS Naprawdę chciałbym przeczytać ten artykuł wcześniej w mojej karierze. Dotyczy to mojego ostatniego akapitu. http://www.joelonsoftware.com/articles/fog0000000356.html