Pytanie:
Jak mogę odfiltrować zadania związane z inżynierią oprogramowania, w których będę proszony o napisanie algorytmów w wywiadzie?
Karen34
2020-08-19 23:42:09 UTC
view on stackexchange narkive permalink

W mojej codziennej pracy rzadko jestem „programistą”. Prowadzę zespół inżynierów i uważam się za inżyniera. Buduję funkcje, naprawiam błędy, pracuję nad API, bazami danych itp., Ale rzadko muszę pisać algorytmy ... a kiedy to robię ... Po prostu wyszukuję w Google najlepszy sposób, aby coś zrobić i to zadziałało dla mnie ostatnią dekadę.

Straciłem dużo czasu na udzielanie wywiadów ludziom, którzy chcą, żebym rozwiązał pytania w stylu LeetCode i po prostu nie chcę się w nie wdawać. Jestem głównym inżynierem z dobrym życiorysem i wynagrodzeniem i chcę utrzymać tego rodzaju stanowisko w całej mojej karierze.

Jak powiedzieć firmom, że nie jestem zainteresowany majstrowaniem przy algorytmy w celu przeprowadzenia z nimi wywiadu?

Komentarze nie służą do rozszerzonej dyskusji;ta rozmowa została [przeniesiona do czatu] (https://chat.stackexchange.com/rooms/112016/discussion-on-question-by-karen34-how-to-filter-out-software-engineering-jobs-wh).
Trzynaście odpowiedzi:
Helena
2020-08-20 00:32:41 UTC
view on stackexchange narkive permalink

Przede wszystkim możesz mieć błędną terminologię. Jak widzę, użyte słowa „programista” częściej opisują pozycję, w której prosty kod jest napisany zgodnie z istniejącymi specyfikacjami i interfejsami API, gdzie „Inżynier oprogramowania” to praca wymagająca skomplikowanych algorytmów , wzorce projektowe, architektura i projektowanie systemów. Możesz szukać miejsc pracy programisty zamiast inżynierii oprogramowania.

Jestem głównym inżynierem, mam dobre CV i płacę, i chcę utrzymać tego rodzaju stanowisko w całej mojej karierze.

Myślę, że jest to wyjątek i większość firm oczekuje, że główny inżynier oprogramowania będzie w stanie rozwiązywać proste warianty problemu z wykresem lub przeszukiwać listę. Jeśli chcesz być głównym inżynierem, myślę, że powinieneś przyzwyczaić się do idei uczenia się algorytmów. Nie oznacza to, że musisz codziennie pisać złożone algorytmy, ale jeśli nie jesteś w stanie dostrzec różnicy między O (N ^ 2) rozwiązanie i rozwiązanie O (N), nie będziesz w stanie rozpoznać problemu, gdy się o niego potkniesz, np. kiedy jako główny inżynier przeglądasz kod młodszych programistów.

Jeśli więc przeprowadzasz rozmowę kwalifikacyjną na stanowisko „głównego inżyniera oprogramowania”, istnieje duże prawdopodobieństwo, że tracisz czas. role kierownicze, takie jak zarządca infrastruktury lub kierownik techniczny?

Komentarze nie służą do rozszerzonej dyskusji;ta rozmowa została [przeniesiona do czatu] (https://chat.stackexchange.com/rooms/112019/discussion-on-answer-by-helena-how-to-filter-out-software-engineering-jobs-where).
Myślę, że to jest naprawdę specyficzne dla kraju.W większości krajów europejskich większość firm nie przejmuje się zbytnio.Możesz napisać niezwykle wydajne algorytmy, ale jeśli Twój kod wygląda jak gówno i jest nie do utrzymania, nadal nie powinieneś być zatrudniony.Dlatego wiele firm zamiast tego zleca Ci przypisanie kodu.Prawdziwy problem, który musisz rozwiązać za kilka dni.Nie ma potrzeby, aby był super wydajny.Ale musi być możliwe do utrzymania i musi działać prawidłowo
Mogę trochę powiedzieć z własnego doświadczenia, że chociaż wywiady w Google są obciążone algorytmami, należy je dostosować w zależności od pozycji, a nacisk kładziony jest bardziej na umiejętność rozwiązania dobrego podejścia niż na to, abyś był w stanierozwiązać go w określony poprawny sposób.Tak, niektórzy ankieterzy oczywiście nie rozumieją tego dobrze.
Jestem inżynierem oprogramowania, a teraz architektem oprogramowania.Pracowałem dla największych banków w moim kraju, dla wielu oddziałów rządowych, dla firm logistycznych / transportowych - i nigdy nie musiałem pisać ani jednego „algorytmu” w całej mojej karierze.
Karl Bielefeldt
2020-08-20 17:45:00 UTC
view on stackexchange narkive permalink

Pianiści koncertowi wciąż potrafią grać gamy. Algorytmy nie są czymś dziwnym, z którego korzystają tylko akademicy. Są to minimalne, zamknięte wzorce projektowe, które są używane dość często w prawie każdej dziedzinie. Tak, żaden klient nie przyjdzie do Ciebie i nie powie: „Zaimplementuj wyszukiwanie binarne w następnej wersji oprogramowania”, ale powiedzą : „Ta strona jest zbyt wolna”, a wyszukiwanie binarne będzie najlepszym sposobem rozwiązania tego problemu.

Jeśli pojawi się problem „to jest za wolne” i nie możesz połączyć kropek, aby wiedzieć, że potrzebujesz wyszukiwania binarnego i być w stanie komunikować się zwięźle tego potrzebujesz, po prostu zostanie przekazany komuś innemu w firmie, który może. Jako jedna z osób, które mają tendencję do przypisywania błędów „ten drugi zespół nie potrafi wykonywać algorytmów”, mogę powiedzieć, jak denerwująca jest praca z ludźmi, którzy nie uważają, że to część ich pracy.

Myślę, że to dobra odpowiedź.Nienawidziłem wywiadów z algorytmami, z tego samego powodu, z którego wydaje się OP.Ale potem miałem pracę, której NAPRAWDĘ chciałem, która miała bardzo rozbudowany algorytm procesu rozmowy kwalifikacyjnej, więc przykucnąłem i przestudiowałem problemy typu „leetcode” i wiesz co?Dzięki temu stałem się znacznie lepszym programistą.Myślenie o Big-O fragmentu kodu jest teraz po prostu drugą naturą i chociaż rzadko będziesz rozwiązywać te same problemy w prawdziwym świecie (niewielu programistów kiedykolwiek potrzebuje sortować BST), sztuczki, które wybierzeszma zastosowanie do wszelkiego rodzaju problemów świata rzeczywistego.
To właściwie nie jest dobra odpowiedź, ponieważ nie jest to próba odpowiedzi na rzeczywiste pytanie;jak uniknąć wywiadów wyglądających na pytania w stylu początkującym. Bycie liderem zespołu to o wiele bardziej kwestia ludzi niż algorytmów. W wielu miejscach lider zespołu jest otoczony przez lidera technicznego właśnie z tego powodu.
Istnieje ** duża ** różnica między znajomością klas złożoności z doświadczeniem na temat tego, czego i gdzie używać, a ręcznym kodowaniem.Dobry główny inżynier musi wiedzieć, że dla tego konkretnego problemu wyszukiwanie binarne jest optymalnym rozwiązaniem.Ale dobry główny inżynier nie musi faktycznie implementować samego algorytmu.Zasadniczo wszystkie współczesne języki mają struktury danych i algorytmy do takich rzeczy, które zostały opracowane, przetestowane i dopracowane przez długi czas przez wielu ekspertów skupiających się na tym właśnie *.Zapytaj w crypto.se o szyfrowanie homebrew i zobacz, jak zareagują
Co to są „łuski”?[To nie jest prośba o wyjaśnienie, ale wskazanie, że twoja metafora / porównanie może nie być tak powszechnie rozumiane, jak myślisz]
@Val, główny inżynier, może jednak zdecydować, że biblioteka po prostu nie rozwiązuje tego problemu i że wymaga trochę modyfikacji, muszą być wystarczająco kompetentni, aby to zobaczyć, i albo zrobić samodzielnie, albo poprowadzić kogoś do poprawnej modyfikacji.Nie muszą być w stanie tego zrobić bez badań, ale muszą być w stanie to zrobić, gdy jest to wymagane, przy rozsądnej ilości badań.
@FrankHopkins: To prawda, ale pytanie do rozmowy kwalifikacyjnej, takie jak * „tutaj jest pusta kartka papieru (lub pusty plik), teraz zaimplementuj szybkie sortowanie w pięć minut bez korzystania z zewnętrznych odnośników” * zawiodą takich kandydatów i wybierz kandydatów, którzy byli dobrzyw odrabianiu zadań domowych i dobrym zapamiętywaniu rzeczy, nawet jeśli nie do końca ich rozumieją, ale nie są zbyt dobrzy w znajdowaniu dobrych rozwiązań problemów z życia codziennego.
@Val tak, tak może być.Z drugiej strony, nigdy nie miałem takiego pytania do wywiadu i nie liczyłbym ich w ogólnym przypadku pytań, do których odnosi się OP (recytując z grubsza, jak jeden lub dwa popularne algorytmy sortowania działają w ogóle i wyjaśnij to, miałem i rozważałbym w normalnej sytuacji; ale potem wracamy do wiedzy, do kogo się zgłosić i dlaczego - a żadne z pytań i tak nie zawiodłoby kandydata w dobrej konfiguracji testu).Może gdyby próbowali uniknąć „złych” pytań algorytmicznych ...;)
@BernhardBarker Właściwie, jako osoba całkowicie niemuzyczna, mam wystarczająco dobre pojęcie o tym, czym są skale.Co więcej, z kontekstu wynika, że jest to coś dość podstawowego, co robisz na pianinie.
Uwielbiam tę odpowiedź, ale myślę, że nasuwa się pytanie: w jaki sposób przeprowadza się wywiady z pianistami koncertowymi?
Tymoteusz Paul
2020-08-20 00:11:36 UTC
view on stackexchange narkive permalink

Jak powiedzieć firmom, że nie interesuje mnie majstrowanie przy algorytmach w celu przeprowadzenia z nimi wywiadu?

Odpowiadając na zaproszenie na takie testy „nie Dziękuję Ci". Możesz spróbować zaproponować alternatywny proces, aby pójść na „nie”, ale to witaj mary.

Jeśli jesteś dobry, w końcu znajdziesz firmę, która zgadza się z twoim światopoglądem. Jeśli nie, być może będziesz musiał pójść na kompromis i wykonać testy algorytmu lub stanąć w obliczu bezrobocia.

To chyba najlepsza odpowiedź.Nikt nie może cię zmusić do zrobienia czegoś wbrew twojej woli, więc po prostu odmów.Oczywiście konsekwencje tego są oczywiste, ale jeśli ktoś jest tak nieugięty, aby poświęcić od 30 minut do godziny swojego czasu na demonstrowanie podstawowych umiejętności pracy, to prawdopodobnie najlepszy wynik dla wszystkich zainteresowanych.
Nadal stratą czasu jest chodzenie na rozmowę kwalifikacyjną, mówienie „nie” i wyrzucanie w x% przypadków.
@usr1234567 jak to jest?Może istnieć wiele powodów, dla których ktoś odmówi lub nie dostanie oferty pracy.„Nie będę mówić o algorytmach. Muszę mieć miejsce przy oknie. Jeśli nie mam co najmniej trzech monitorów, wypadam. Oczekuję postępów rocznie”.itd. itp. Czy masz zamiar dać im listę zakupów, zanim jeszcze zgodzisz się ich spotkać?Dosłownie * cały punkt * rozmowy kwalifikacyjnej polega na tym, aby dowiedzieć się, czy firma chce Cię zatrudnić i czy chcesz dla niej pracować.Dowiedzenie się, że tego nie robisz (nawet z głupich powodów, takich jak OP), jest tym, czego * dosłownie * dotyczy wywiad.
Pytanie nie wspomina konkretnie o testach (w swoim własnym czasie).Czy zaproponowałbyś również powiedzenie „nie, dziękuję”, gdybyś zapytał o to w wywiadzie na żywo?Jeśli nie, co byś zaproponował?
@BernhardBarker w rzeczywistości jest bardzo specyficzny dla https://leetcode.com/ Ale niezależnie od tego, czy na żywo, czy nie, jeśli nie uważasz, że ten test jest czymś, co chcesz zrobić, masz prawo odmówić i wyjść.Nie ma większego znaczenia, czy to offline, czy online, oszczędzaj, co tylko możesz.
@TymoteuszPaul To, czy odmawia odpowiedzi na pytanie z wywiadu, czy odmawia ukończenia testu, ma znaczenie pod względem tego, ile czasu każdego prawdopodobnie by się zmarnował, jak niegrzeczny byłby uznany za niegrzecznego i jak prawdopodobne jest spalenie mostów.Nie to, żebym radził odpowiedzieć na pytanie, któremu zdecydowanie się sprzeciwia, ale chcę po prostu zwrócić uwagę na ryzyko odmowy zrobienia tego w tym przypadku.
@BernhardBarker Pomyślałem, że nie ma wątpliwości, że takie twarde traktowanie może prowadzić do bezrobocia.Teraz, czy się z tym zgadzam, czy nie, mam własne zdanie, ale OP nie pytał, czy to ma sens, czy nie, tylko jak osiągnąć to, co chce zrobić.
@TymoteuszPaul Wydawało się, że po prostu mówisz, że może nie być tak wiele firm, które nie zadają takich pytań lub są skłonne zapytać o coś innego, co nadal może prowadzić do zatrudnienia, zamiast mówić cokolwiek o wrażeniu, jakie będzieszwyjeżdżając odmawiając odpowiedzi.Cała rzecz o braku zatrudnienia nie mówi * tak * wiele o tym, co o tobie myślą, zwłaszcza biorąc pod uwagę odpowiedź „nie, dziękuję”, można uznać za * ty * odmowę kontynuowania * ich * procesu rozmowy kwalifikacyjnej (zasadniczo mówiąc, że niechcę pracy) bardziej niż * oni * odrzucają * ciebie *.
Czy brakuje mi znaczenia tego, kto kogo odrzuca?Wciąż kończysz bez pracy i być może w ogóle bez pracy.
HenryM
2020-08-20 00:53:01 UTC
view on stackexchange narkive permalink

Zdobądź osobę rekrutującą na stanowiska kierownicze i skup się na stanowiskach kierowniczych. Powiedz rekruterowi, czego szukasz.

Firmy konsultingowe Executive Search są zwykle używane na wyższych stanowiskach kierowniczych i członkach zarządu. Przypisania są generalnie na stanowiska, na których najtrudniej jest znaleźć najlepszego kandydata i trudniej go przekonać do wykonania ruchu oraz na których potencjalny wpływ sukcesu lub porażki jest największy. Rekruterzy warunkowi są najczęściej wykorzystywani na stanowiskach średniego szczebla lub na stanowiskach, na których jest duża liczba wykwalifikowanych kandydatów. Trzy rzeczy, które kandydaci powinni wiedzieć o Executive Recruiters, Forbes

Nie zakładaj, że zatrudniony konsultant Executive Search przekaże Cię wielu pracodawcom, aby uzyskać najlepszą ofertę ... Żaden kandydat, któremu przedstawiono klientowi firma nie powinien być skierowany do innego klienta, dopóki pierwotny klient nie zostanie zamknięty wyrzucić kandydata. Ponieważ rekruterzy na nieprzewidziane sytuacje nie są zatrudniani, reklamują kandydatów wielu pracodawcom w tym samym czasie. Robią to, aby zmaksymalizować szanse na zatrudnienie i uzyskanie wynagrodzenia. Jednak wprowadzają na rynek tylko tak zwane MPC - najczęściej wymienialnych kandydatów - i koncentrują się na rolach niższego szczebla. Jak poznać zatrzymanego rekrutera wykonawczego

Nie jest łatwo znaleźć rekrutera wykonawczego, ale może to być coś, do czego ostatecznie zechcesz strzelić.

Matthew Gaiser
2020-08-20 00:57:33 UTC
view on stackexchange narkive permalink

Po prostu odrzuć je, jeśli zostaną przedstawione.

Trudno byłoby konsekwentnie określić na podstawie aplikacji, czy firmy z tego korzystają. W mojej obecnej organizacji nie zadawano mi żadnych pytań algorytmicznych. Obecnie zadajemy respondentom pytania algorytmiczne, ponieważ zmienił się inżynier prowadzący wywiady.

W innych firmach, dla których przeprowadzałem wywiady, mają do zrobienia wywiad w stylu LeetCode, chyba że zostaniesz polecony. Wskoczyłem do ostatniej rundy jako osoba polecona.

W innej organizacji rządowej, z którą rozmawiałem, mają LeetCode jako jedną z kilku opcji, których możesz użyć jako dowodu kompetencji. Nie było o tym wzmianki w trakcie procesu rekrutacji i wydawało się, że rząd w ogóle to robi.

Nie można naprawdę przewidzieć.

Jeśli naprawdę chcesz tego uniknąć, pielęgnuj relacje z rekruterami, które nieuchronnie pojawiają się na Twoim LinkedIn. Odkryłem, że mogą ci dużo powiedzieć o tym, jak się sprawy potoczą.

ojs
2020-08-20 18:34:05 UTC
view on stackexchange narkive permalink

Skieruj swoją karierę na zarządzanie.

Czytając pytanie, odniosłem wrażenie, że nie interesujesz się inżynierią oprogramowania (których algorytmy są istotną częścią), ale stanowisko, wynagrodzenie i CV są wazne dla Ciebie. Na szczęście dla Ciebie, branża oprogramowania jest pełna zadań związanych z zarządzaniem, które czerpią korzyści z doświadczenia inżynieryjnego, ale nie obejmują faktycznego programowania, takich jak kierownik produktu, kierownik liniowy, właściciel produktu, mistrz scrum itp. Ze względu na status kierownictwa są one często opłacane lepiej niż inżynierowie role, i nie konkurujesz z ludźmi, którzy rzeczywiście interesują się swoim zawodem poza tym, co jest obowiązkowe. Kolejną korzyścią jest to, że w firmach, które nie mają poważnego R&D, kariery inżynierów są bardzo ograniczone, a kierownictwo oferuje więcej opcji.

Inżynieria oprogramowania zajmuje się głównie złożonością, a nie algorytmami.
OK, zaktualizowałem sformułowanie.
Teraz, kiedy o tym myślę, zarządzanie jest o jeden poziom wyżej w grze: zamiast zajmować się złożonością, chodzi o zorganizowanie innych, aby radzili sobie ze złożonością.Ale nie jestem pewien, czy o to chodzi.
@ojs Ale myślę, że to dobra odpowiedź.Jako inżynier nie przeszkadza mi, że menedżerowie nie są techniczni.Umiejętności, których potrzebują, aby wszyscy podążali we właściwym kierunku i próbowali osiągać kamienie milowe, z odpowiednim dopełnieniem szacunków, ale nie za dużo, zdecydowanie nie są moim zestawem umiejętności.Ale jeśli spotykam kogoś, kto twierdzi, że jest „głównym inżynierem” w zespole ds. Oprogramowania, który mówi „nie robię algorytmów”, martwię się.Nie są kompetentni jako inżynier i rozkoszują się swoją ignorancją, ale w jakiś sposób znajdują się w sytuacji, w której powinni odpowiadać za jakość techniczną.Nie.
@PeterMortensen składa się z obu części, a niektóre zadania polegają bardziej na jednym, a inne na drugim, dobrze wszechstronny inżynier oprogramowania może sobie z nimi poradzić.Jeśli chcesz całkowicie wykluczyć jedną stronę, musisz dokładnie poszukać pasujących ofert.Czasami działa to na podstawie opisu stanowiska, ale niektóre firmy po prostu chcą inżynierów, którzy widzą problem algorytmiczny, gdy go napotkają i będą w stanie poradzić sobie ze złożonymi zależnościami i tym podobnymi.
Solidne porady, ubijanie drzew binarnych i sklejanie kodu w Pythonie lub majstrowanie przy demontażu c ++ w deszczowy weekend to prawie ślepa uliczka na pewnym etapie życia, zarządzanie to naturalny postęp w każdej karierze technicznej.
Właściwie spędzanie czasu na „przygotowywaniu drzew binarnych i sklejaniu kodu w Pythonie” to ślepy zaułek.Chodzi o to, że zdolny inżynier powinien być w stanie robić te rzeczy bez wysiłku, gdy jest to potrzebne, i wykonywać trudniejsze rzeczy, gdy ma czas.Podczas rozmów kwalifikacyjnych rozmówca zwykle nie ma czasu.
Justozauras
2020-08-20 14:36:24 UTC
view on stackexchange narkive permalink

Możesz sprawdzić http://they.whiteboarded.me/, w którym znajduje się lista firm przeprowadzających wywiady na tablicy.

To interesujący zasób (i prawdopodobnie przydatny dla tych, którym przeszkadzają tego rodzaju rzeczy, chociaż bez wielu zgłoszeń szanse na znalezienie tam dowolnej firmy są niewielkie).Nie jestem jednak pewien, czy to w 100% pasuje do pytania OP, ponieważ nie wspominają o tym, że sprzeciwiają się białej tablicy jako takiej.Ale z pewnością powiązane.
Ich lista firm zajmujących się whiteboardami obejmuje wiele dobrych firm.Może kandydaci powinni po prostu przyznać, że tak właśnie jest i grać z tym.
@QuoraFeans tak, podoba mi się ta lista, ale wbrew intencjom autora uważam to za pozytywny sygnał, że firma w ogóle wykonuje * jakieś * testy tablicy.Nadal mogą być źle zrobione, ale dla mnie okazują się pomocne w wywiadach, ponieważ jako ankietowani mówią mi też coś o ankieterach.
pacoverflow
2020-08-20 20:12:07 UTC
view on stackexchange narkive permalink

Gdy znajdziesz firmę, z którą chcesz przeprowadzić rozmowę kwalifikacyjną, możesz przejść do Glassdoor i wyszukać firmę. Na stronie firmy można zobaczyć recenzje przesłane przez użytkowników, wynagrodzenia i pytania do rozmów kwalifikacyjnych. Oto przykład pytań na rozmowę kwalifikacyjną w Google.

Jeśli w firmie było wiele pytań zadawanych przez użytkowników na rozmowę kwalifikacyjną, możesz zorientować się, jakiego rodzaju pytania zostanie zapytany, w tym rodzaje problemów związanych z kodowaniem, które należy rozwiązać. Oczywiście, jeśli jest to mniejsza firma z niewielką liczbą zgłoszeń użytkowników, może to nie pomóc.

Frank Hopkins
2020-08-21 03:47:18 UTC
view on stackexchange narkive permalink

W większości zgadzam się z odpowiedzią Heleny i zakładam, że większość przyzwoitych firm oczekuje pewnego poziomu znajomości algorytmów od osób, które chcą pełnić wiodącą rolę w inżynierii oprogramowania. Jednak może być kilka wyjątków, w których projekt wymaga głównie zajmowania się drobiazgowymi szczegółami zarządzania komponentami i zależnościami, rolą opartą na kierunku menedżerskim, kierowaniem działalności na bardzo lekkie aplikacje bez jakiejkolwiek złożoności algorytmicznej lub firmy nie być „przyzwoitym” w tym sensie, że ich terminologia jest tak błędna, jak obecna ^^. Przynajmniej z twojego opisu wydajesz się bardziej jak kierownik zespołu, który również rozwija się, koncentrując się na projektowaniu interfejsów API i algorytmicznie prostego oprogramowania (nic w tym złego, wybór odpowiedniej technologii jest również interesującą częścią pracy, ale nie wszystko czego oczekiwałbym od głównego inżyniera oprogramowania). Więc wydaje mi się, że jesteś programistą zarządzającym zespołem. Być może jesteś również szczególnie dobry w wybieraniu frameworków lub projektowaniu interfejsów API, wtedy możesz się na tym skupić.

Kilka rzeczy, na które zwróciłbym uwagę w opisach stanowisk, aby znaleźć odpowiednią pracę i zwiększyć szansę na to, że w obliczu (zbyt wielu) pytań algorytmicznych byłoby to:

  • skupienie się na bibliotekach, frameworkach i frazesach technologicznych
  • wzmianka o obowiązkach kierowania zespołem (zarządzanie osobiste)
  • nacisk na projektowanie API
  • nacisk na lekkie aplikacje internetowe
  • nacisk na architekturę technologii / infrastruktury
  • początkujący, samouk kultura *

Zasadniczo więc w przypadku zadań, które opierają się „w górę” w kierunku projektowania zewnętrznej powłoki aplikacji i sposobu ich współpracy bez patrzenia na złożoność algorytmiczną lub w przypadku zadań, które pochylają się „w bok”, np. do domeny biznesowej lub do zarządzania zespołem lub infrastrukturą. Czasami mogą istnieć role głównie związane z projektowaniem interfejsów API lub „faworytami”, którzy dyskutują z osobami znającymi domenę biznesową, jak oprogramowanie powinno działać na poziomie biznesowym i API, a następnie szczegóły zostaną zaprojektowane przez inżynierów oprogramowania.

* Dlaczego kultura startupów / samouków? Ponieważ - frazesy, tak, ale często to widziałem - ci często nie wiedzą właściwie, co robią (technicznie), często zatrudniają kogo mogą dostać i którzy mogą szybko wdrażać rzeczy bez większego zainteresowania algorytmiczną wydajnością. Czasami po jakimś czasie zawodzą, czasami im się to udaje, a potem może być konieczne posprzątanie bałaganu, gdy gwałtownie rosną, a ich naiwne algorytmicznie rozwiązania na małą skalę już się nie skalują, ale nadal mogą zapewniać dobrą pracę przez lata. Czasami nie stanowi to żadnego problemu, ponieważ ich rynek docelowy nie potrzebuje wydajności algorytmicznej, tylko ktoś, kto pisze program z ładnym interfejsem użytkownika dla tej niszy, o którą nikt jeszcze się nie troszczył.

Lan
2020-08-21 19:39:28 UTC
view on stackexchange narkive permalink

Stosuj się tylko do ról wyższego szczebla , dyrektora lub kierownika i w swoim CV właśnie tego szukasz i często jest to zgodne z prawdą , wyrażaj swoje doświadczenie w życiorysie i liście motywacyjnym oraz w korespondencji e-mailowej jako takiej.

Przynajmniej w mojej głowie, Junior do „No Prefix” odpowie na te pytania. Seniorzy i starsi, nie.

Swiss Frank
2020-08-20 23:17:36 UTC
view on stackexchange narkive permalink

Prawie zawsze korzystałem z usług rekruterów i rekruter będzie wiedział, jak wyglądają rozmowy kwalifikacyjne. Po pierwsze, będą wiedzieć z doświadczenia, po drugie zapytają kierownika ds. Rekrutacji, a po trzecie, omówią wszystkich innych rozmówców, których wysłali. (Rekruterzy dosłownie próbowali zadać mi pytania testowe, które usłyszeli od kandydatów, których wysłali wcześniej.)

Po prostu powiedz rekruterowi, aby nie zawracał sobie głowy zapraszaniem Cię na takie rozmowy, jeśli naprawdę nie chcesz ich przeprowadzać.

Basile Starynkevitch
2020-08-23 04:16:18 UTC
view on stackexchange narkive permalink

Jak powiedzieć firmom, że nie interesuje mnie majstrowanie przy algorytmach w celu przeprowadzenia z nimi wywiadu?

Alternatywą jest posiadanie własnego portfolio oprogramowania typu open source na platformach takich jak github lub gitlab (lub na wypożyczonym VPS). Wspieraj istniejące projekty open source (takie jak GCC lub FLTK lub RefPerSys lub tysiące innych). Gdy staniesz się tak sławny jak Linus Torvalds, Guido Von Rossum lub Xavier Leroy, będziesz dobrze zarabiać i będziesz mieć możliwości zatrudnienia . Zauważ, że większość programistów GCC lub jądra Linuksa otrzymuje wynagrodzenie za swoją pracę (zobacz LWN o tym, a może napisz tam ... ). Po zaprojektowaniu i wdrożeniu języka programowania, który ma kilku użytkowników (jest to naprawdę trudne , jak wyjaśnia Simon Peyton-Jones), możesz mieć interesujące oferty pracy.

Inną alternatywą jest posiadanie przynajmniej publicznego bloga, na którym wyjaśniasz niektóre widoki architektoniczne oprogramowania , które opracowałeś (lub prowadziłeś technicznie). Pamiętaj, aby uzyskać na to wcześniejszą zgodę.

Trzecią możliwością jest uzyskanie wysokiego wyniku na platformach takich jak StackOverflow . Być powyżej 1% najlepszych.

Czwartą alternatywą jest napisanie i opublikowanie jakiejś książki technicznej na temat doskonałości (lub przynajmniej publicznych projektów raportów, takich jak ten).

Piąta możliwość to zrobienie doktoratu i / lub opublikowanie prac naukowych - z recenzjami - np. ACM konferencje . Związane z tym jest zarabianie (w niepełnym wymiarze godzin) za udzielanie lekcji na temat tworzenia oprogramowania i programowania oraz zarządzanie i mentorowanie stażystów.

Inną alternatywą jest dobrowolne (i nieodpłatne) udzielanie wykładów o programowaniu i tworzeniu oprogramowania (na przykład ta, którą wygłosiłem po francusku). Mogą to być nawet filmy w youtube o programowaniu i tworzeniu oprogramowania (kiedyś obejrzane tysiące razy, np. ten).

Bądź świadomy zasady Piotra. Przeczytaj The Mythical Man-Month lub jeszcze lepiej, napisz lepszą książkę.

Ismael Miguel
2020-08-20 15:24:22 UTC
view on stackexchange narkive permalink

Alternatywą może być bardzo dopracowane CV / CV. Taką, która pokazuje, jaki jesteś dobry.

Jeśli to możliwe, daj im również wystarczająco dużo kodu, aby mieli pojęcie o tym, jak piszesz kod, naprawiasz błędy, pracujesz z API lub z bazami danych (np. A osobiste repozytorium Github, niezwiązane z obecną firmą ).

A jeśli pojawi się pytanie w stylu LeetCode, po prostu staw mu czoła w ramach poprawiania błędu, znaleziono i wymaga naprawy. To może pokazać im, że znasz podstawy.

Uwaga : używanie Google do odświeżania niektórych rzeczy, o których zapomniałeś, nie jest złe! (Chyba że twój kod jest w 100% kopiuj-wklej-kleju StackOverflow.)
Przykład: miałem wywiad, w którym zapomniałem, jak połączyć się z bazą danych w PHP (moje serce waliło i źle spałem tego dnia).
Właśnie odświeżyłem kilka przykładów i napisałem własne, bez kopiowania i wklejania .
Celem było napisanie bazy danych + skrypt PHP do przechowywania i pobierania informacji potrzebne w restauracji, na podstawie pisemnego opisu.


Ale jeśli naprawdę nie jesteś zainteresowany rozwiązywaniem tych „fałszywych” problemów, możesz spróbować negocjować alternatywna metoda oceny twoich umiejętności i zobaczenia, jak to idzie.

Pamiętaj tylko, że może to dać mniej niż optymalny obraz twoich umiejętności kodowania osobie przeprowadzającej rozmowę (z pewnością miałbym wątpliwości co do twoich umiejętności kodowania).



To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 4.0, w ramach której jest rozpowszechniana.
Loading...