Jestem programistą .1x w mojej firmie. Jak mogę najlepiej pomóc? [Zamknięte]


61

Pracuję w nowo powstałym startupie złożonym z pięciu osób. Mamy doktorat z uczenia maszynowego, były członek podstawowego zespołu RSpec i facet, który kompiluje plik binarny Git dla OS X. To tylko pracownicy; założyciel ma doktorat i był CTO dla korporacji o wartości wielu miliardów dolarów, zanim odszedł, aby rozpocząć (udany) start-up, a teraz zostawił to, aby rozpocząć ten. Możemy również dostać faceta z doktoratem z matematyki.

Aaaaaaaaaaaaaaaaaaaaa, stażystka kończąca studia. Myślę, że jestem całkiem sprytny i czytam non-stop, ale delta doświadczenia, umiejętności i wiedzy między mną a moimi współpracownikami zapiera dech w piersiach.

Więc postaw się na ich miejscu: masz bystrego młodego stażystę, który ma wiele do nauczenia się, ale jest przynajmniej energiczny. Co by było denerwujące? Jaki pożytek miałbyś wydostać się z niego tu i teraz? Co by było przyjemnie zaskakujące, gdyby tak się stało?


32
Jedną z interesujących rzeczy w startupach na wczesnym etapie jest to, że wszyscy robią wszystko - ponieważ w sumie jest tak mało pracowników. Będziesz miał mnóstwo okazji, aby dowiedzieć się, co robisz dobrze, czego inni ludzie nie robią. Tymczasem martw się o stworzenie świetnego produktu, a nie o to, jak zastraszani są twoi koledzy.
James Youngman

3
Kawałki papieru nie są tak duże w porównaniu do działań i umiejętności, które można wykazać, po prostu pamiętaj o tym. Jeśli coś zademonstrujesz, papier jest techniczny.

6
to najlepsza rzecz w życiu, możesz się od nich wiele nauczyć. I nie myśl za dużo, po prostu rób to, co robią wszyscy programiści.
Sufendy

4
Wyglądasz jak Hawkeye w otoczeniu Thora, Kapitana Ameryki, Hulka i Ironmana. Ale Hawkeye też jest niesamowity! : D
bertzzie

20
„facet, który kompiluje plik binarny Git systemu OS X” == „facet, który

Odpowiedzi:


58

Najważniejsza rzecz:

Nie bądź pod wrażeniem tytułów. W krótkim czasie zdasz sobie sprawę, że twoi współpracownicy z Ph.D są również ludźmi. A niektórzy ludzie z doktoratem tak naprawdę nigdy nie stworzyli niczego praktycznie przydatnego. Zawsze pamiętaj o tym, nie czuj się gorszy.

Czego bym się od ciebie spodziewał? Aby napisać dobry kod i załatwić sprawę. Możliwe, że jesteś kimś, kto naprawdę pracuje, ponieważ określasz siebie jako energicznego. Widziałem wielu ludzi ze stopniem naukowym, którzy lubili wiecznie wykonywać proste zadania, ponieważ zbyt dużo koncentrowali się na szczegółach itp. Wykorzystaj to i użyj dobrego kodu w rozsądnym czasie, a wkrótce wszyscy będą cię szanować.

Ale nie lekceważ innych. Najprawdopodobniej są starsze i prawdopodobnie możesz się od nich nauczyć cennych rzeczy. Ale nie przejmuj się bezmyślnie. Zawsze staraj się zrozumieć i pomyśleć sam. Spodziewałbym się, że skopiujesz zachowania i wiedzę, które naprawdę działają.


1
+1 Miałem doktorat z EE pracujący dla mnie przez mniej niż 40 tys. Rocznie przez 2 lata. Tytuły nic nie znaczą - chodzi o umiejętności, kompetencje i umiejętności krytycznego myślenia.
Jonathan Henson

3
Tytuły nic nie znaczą. Edukacja nic nie znaczy. Doświadczenie nic nie znaczy. Certyfikaty nic nie znaczą. Używanie narzędzi do generowania wyników jest wszystkim.
Chuck Conway

To wydaje się ... dziwnie mądre.
tymczasowego

Tak jak musisz okazywać szacunek swoim kolegom, masz prawo oczekiwać, że odwzajemnią się. Nigdy nie zapominaj, że mogą się od ciebie uczyć - prawie na pewno nie wiedzą wszystkiego.
mattnz

41

Pokora przechodzi długą drogę

Z twoim skromnym nastawieniem poważnie wątpię, czy będziesz denerwująca. Pokora przechodzi długą drogę. (Dotyczy to zarówno zdjęć typu hot-shot, jak i stażystów.)

Jeśli Twoja rola polega wyraźnie na wspieraniu innych, możesz być pewien, że będziesz przydatny, po prostu pytając. „Jakie irytujące zadanie mogę zdjąć z talerza?”

Inną rzeczą, którą znajdziesz, jest to, że większość ludzi uwielbia czuć się doceniana. Jeśli naprawdę patrzysz na członków swojego zespołu, możesz uciec od proszenia ich o wiele i uczenia się od nich. Będą się zaszczyceni, ale to będzie prawdziwe. Pomoże Ci także uczyć się i stanie się bardziej przydatny.

Wreszcie, wiedza mniej od nich może być przydatna sama w sobie. Na przykład prawdopodobnie lepiej będziesz pisać dokumentację interfejsów API, ponieważ będziesz zadawać pytania zadawane przez osoby z zewnątrz, ale które wydają się zbyt oczywiste dla innych.

I kto wie? Może się okazać, że kierując się umysłem służącym, stajesz się przywódcą.


7
+1 za „zadajesz pytania zadawane przez osoby z zewnątrz” - jest to szczególnie trudne dla ciężko pracujących ekspertów, którzy są głęboko zagłębieni w szczegóły, którzy mogą myśleć, że cofają się, aby zobaczyć duży obraz, ale nie są w pobliżu wszelkie wyobrażenie o tym, jak wyglądają osoby postronne (klienci!).
DarenW

17

Masz już wiele dobrych odpowiedzi. Myślę, że mogę się przyczynić, dzieląc się swoim doświadczeniem na podobnym stanowisku.

Kontekst: Pracuję w niepełnym wymiarze godzin w dziale badawczo-rozwojowym dość dużej firmy od kilku lat, podczas gdy moim głównym zajęciem jest studiowanie CS. Ludzie, z którymi pracuję przez większość czasu, mają doktoraty lub stopnie magistra w zakresie EE, CS, matematyki i fizyki. Zaczynałem jako kompletny noob, ale wiele się nauczyłem przez te kilka lat.

Co by było denerwujące?

  1. Zadawanie pytań, na które mogę łatwo odpowiedzieć sobie za pomocą Google
  2. Zbyt często przerywając innym, zadając pytanie. Jeśli masz pytanie, które nie jest blokerem, wykonaj inną pracę, dopóki nie będziesz w stanie zadać pytania bez przerywania zadawanej osobie. Możesz zebrać kilka pytań, a następnie poprosić o czas drugiej osoby lub poczekać, aż dana osoba zapyta o twoje postępy lub o dobry czas, aby porozmawiać z nim, np. Kiedy został już przerwany przez telefon, na koniec przerwy, .. Potem powiedz mu: „Zrobiłem to i tamto, ale obecnie utknąłem tu i tam”.
  3. Jeśli utkniesz (po wyczerpaniu google i innych zasobów), poproś o pomoc. Nic gorszego niż dowiedzenie się, że ktoś utknął na 2 dni w czymś, co mógłbyś dla niego rozwiązać w 5 minut (autor: Neil White, w komentarzach)
  4. Nie staraj się być mądrzejszy niż wszyscy inni.

Jaki pożytek miałbyś wydostać się z niego tu i teraz?

  1. Rób rzeczy, które inni uważają za łatwe / denerwujące w sposób, który faktycznie pomaga zespołowi. To naprawdę wszystko.

Co by było przyjemnie zaskakujące, gdyby tak się stało?

  1. Że wykonujesz większość pracy w sposób satysfakcjonujący i coraz bardziej angażujesz się w pracę zespołu.

Kilka dodatkowych wskazówek:

  1. Być pokornym.
  2. Okazuj zainteresowanie pracą innych.
  3. Jeśli coś ci wyjaśnią, upewnij się, że rozumiesz. Jeśli nie, poproś ich o wyjaśnienie w taki sposób, aby uzyskać przynajmniej podstawowy pomysł.
  4. Być niezawodny. Staraj się wykonywać pracę tak dobrze, jak potrafisz.

3
Oprócz „Co byłoby denerwujące” sugerowałbym inny: Jeśli utkniesz (po wyczerpaniu google i innych zasobów), upewnij się, że poprosiłeś o pomoc. Nic gorszego niż dowiedzenie się, że ktoś utknął na 2 dni w czymś, co mógłbyś dla niego rozwiązać w 5 minut.
Neil White

@ Neil: masz absolutną rację! Czy miałbyś coś przeciwko, jeśli połączyłem twój komentarz z moją odpowiedzią, aby była bardziej wyczerpująca?
mort

1
+1 dla I did this and that, but currently I'm stuck here and there. Najważniejsze to pokazać, że próbowałeś i rozumiesz odpowiedzi.
Zenon

@mort Pewnie, śmiało!
Neil White

9

Jak dotąd dobre porady od innych. Aby odpowiedzieć na konkretne pytania:

  • Co by było denerwujące?

Byłoby denerwujące, gdybyś zadawał pytania bez odrabiania lekcji. Proszenie o pomoc po zrobieniu wszystkiego, co możesz, aby rozwiązać problem, jest w porządku. Ale jeśli ktoś jest w stanie znaleźć odpowiedź za pomocą prostej wyszukiwarki Google lub czytając instrukcję, to irytuje.

  • Jaki pożytek miałbyś wydostać się z niego tu i teraz?

Zakładam, że masz już jakiś projekt / zadanie. Mam nadzieję, że będziesz w stanie zakończyć to przy minimalnym nadzorze.

  • Co by było przyjemnie zaskakujące, gdyby tak się stało?

Jedną miłą niespodzianką byłoby wcześniejsze zakończenie pracy. Wtedy będziesz w stanie pracować nad większą liczbą projektów o coraz większej złożoności, które potwierdzą Twoją niezawodność. Kolejną niespodzianką byłoby, jeśli potrafisz przewidzieć potrzeby zespołu i pracować nad ich zaspokojeniem z boku. Czy Twój zespół potrzebuje zautomatyzowanego środowiska kompilacji, zautomatyzowanego środowiska testowego, określonych konfiguracji komputera / sieci do testowania itp.? Mogą to być rzeczy peryferyjne


4

Krótka odpowiedź: dowiedz się, czego potrzebuje zespół i być może to, co lubisz najbardziej, i staraj się to zapewnić.

Dłuższa odpowiedź: w początkowej fazie rozruchu większość pracy jest „do zdobycia”; wszystkie zadania do wykonania lub zadania, które ludzie chcą wykonywać, są dostępne dla wszystkich chętnych. Twoje preferencje mogą dosłownie kształtować kierunek, w którym podąża firma.

Zainteresowany HR? Przejmij zadania rekrutacyjne. A może zrobić listę płac. Zainteresowany programowaniem? Dowiedz się, jakiego języka chce używać zespół. Spróbuj napisać kilka testów jednostkowych dla części kodu. Nienawidzisz pisać raportów? Więc nie rób tego. Sprawdź, czy możesz przekazać to zadanie komuś innemu i pracować nad konstruktywnym rozwiązaniem. Poświęć trochę czasu i zastanów się, co możesz zrobić, a następnie wypróbuj.

Należy pamiętać, że jeśli chodzi o bardzo małe wczesne start-upy, jest o wiele więcej do zrobienia niż tylko programowanie. Jeśli chcesz kodować, świetnie! Jeśli wolisz zrobić coś innego, to też dobrze! Ucz się szybko, zadawaj wiele pytań i stawiaj sobie wyzwania.


1

Nie jestem pewien, jak pomocna byłaby moja odpowiedź, ale byłem tam, gdzie jesteś teraz. Otoczony przez ludzi, których czułem / znałem, mieli o wiele więcej do zaoferowania niż kiedykolwiek. Jak postępować w tej pozycji? Ciesz się bardziej niż cierpieniem. Zamiast myśleć, ile nie wiesz, zastanów się, czego możesz się nauczyć i doświadczyć razem z tymi ludźmi. Używaj ich jako zasobu, szanuj i staraj się zebrać od nich wszelkie informacje i doświadczenia - zostań gąbką ...

Nie oznacza to, że musisz przestać próbować robić różne rzeczy, ale kiedy to zrobisz, postaraj się, aby spojrzeli przez ramię i przejrzeli swoją pracę. Spróbuj wykonać kawałek pracy, a następnie wysłuchaj, co mają do powiedzenia na ten temat - zapisz komentarze, które ci dają, i spróbuj je zaimplementować, aby stworzyć lepszy kod. Nie bój się zadawać pytań, po prostu bądź pełen szacunku i staraj się zadawać dobre pytania - spróbuj przyswoić dane i zastanowić się nad swoim bezpośrednim pytaniem przed zadaniem - być może odpowiedź została już dostarczona ... Najlepsi ludzie lubią uczyć, a ja założę się, że chętnie podzielą się z Tobą swoją wiedzą i filozofią życia.

W mojej sytuacji starałem się to zrobić i zawsze, gdy mi się to udawało, byłem najszczęśliwszy, nigdy nie rozumiałem, dlaczego mnie utrzymują, ale miałem najlepszy czas i lubię myśleć, że stałem się lepszym programistą, a nawet człowiekiem w wyniku tego doświadczenia.

Wszystko to nie oznacza, że ​​powinieneś nie doceniać samego siebie - prawdopodobnie jesteś o wiele lepszy, niż ci się wydaje, ale jak pisali ludzie, tytuły i stopnie nie zawsze są tak imponujące w prawdziwych sytuacjach życiowych, a pokora ma długą drogę. Szanujcie więc wszystkich, słuchajcie, wchłaniajcie - ale weźcie własne lekcje z tego doświadczenia - czasem lepiej jest nauczyć się, czego nie robić.

Powodzenia.


1

Jest tu już dużo prezentowanych, więc nie powtórzę tego, co zostało powiedziane.

Na pierwszy rzut oka wydaje mi się, że masz ekspertów i lidera z umiejętnościami / pomysłami na zarządzanie. To dobrze, ale jest niekompletne .

Jesteś pragmatyczny: ułatw im życie.

Istnieją co najmniej dwa obszary, które możesz objąć:

  • zagłębiając się w szczegóły techniczne języka wybranego przez startup
  • poprawić jakość kodu i wygładzić trudne rogi pracy z nim

Techniczny

Ci faceci są ekspertami w swoich dziedzinach i to dobrze, ale to nie znaczy, że wiedzą, jak zakodować wyjście z papierowej torby. Szczerze mówiąc, widziałem bardzo błyskotliwych ludzi piszących okropny, niemożliwy do utrzymania kod.

Tutaj masz szansę stać się technicznym liderem. Naucz się języka wewnątrz / na zewnątrz, dopóki nie poznasz wszystkich jego subtelności. Naucz się idiomów używanych przez społeczność. Zbadaj przydatne biblioteki, które tam istnieją.


Jakość

Są niewdzięczne, ale przydatne zadania:

  • kto utrzymuje repozytorium źródeł kodu?
  • kto pisze / utrzymuje testy?
  • kto monitoruje przebieg testu? i identyfikuje winnych? i nieustannie pingować przestępców?

Jest kilka kroków, które pomagają, czy to bardzo formalne, czy nie:

  • jak przeglądasz commits? (czy istnieje własność związana z niektórymi obszarami kodu?)
  • jak planujesz pracę / zadania?

Istnieje wiele działań peryferyjnych wokół pomysłów i pisania kodu.

Tutaj masz szansę stać się liderem jakości. Poznaj najlepsze praktyki branżowe (trochę „Agile”, trochę scrum, trochę TDD, ...) i skomponuj proces, który pasuje do Twojej firmy. Naucz się budować systemy (make, cmake, ninja, cokolwiek) i pisz skrypty, które ułatwiają budowanie / wdrażanie. Sprawdź Jenkins (lub cokolwiek innego) i zbuduj serwer ciągłej integracji.


Są imponujące w swoich domenach i to świetnie. Ponieważ w tej chwili nie jesteś specjalistą, powiedziałbym, że nadszedł czas, abyś zidentyfikował słabości (możesz również poprosić o ich opinie) i wypełnić lukę (y)!

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.