Dziedziny programowania nie wymagajace algorytmicznej wirtuozerii?

0

Czesc, ponownie!

Czy sa jakies dziedziny programowania, gdzie na rekrutacji na pewno nie bede musial robic zadnych z algorytmow?
Teoretyczna wiedze ze struktur danych i najpopularniejszych algorytmow jako tako mam. Niestety jesli chodzi o implementacje, a szczegolnie rozwiazywanie problemow ktorych nie widzialem jestem totalnym beztalenciem. W wolnych chwilach robie apki i mam juz kilka na koncie, wiec programowac umiem i lubie. Znam sie na bibliotekach, design'ie, archietkturze, testowaniu, narzedziach i wzorcach projektowych. Problemy w moich apkach tez umiem rozwiazywac, wiec cos umiem i cos mam do zaoferowania.

Czy na rekrutacji na inzyniera DevOps czy testera tez daja zadania z algorytmow?
Co polecicie?

Z gory, dzieki za odpowiedz

5

Na żadnej rekrutacji nie miałem algorytmów. Nie jest to kwestia dziedziny, a konkretnych firm. Wielu nie zależy na skomplikowanych algorytmach, bo w pracy też ich w zasadzie nie ma.
Mówisz o pierwszej pracy?

3

Musisz trafić na firmę, która nie układa durnych zadań tylko bierze pod uwagę portfolio i co masz w repozytorium.
Też nie znoszę rozwiązywać jakichś dziwnych zadań, z którymi w życiu człowiek się nie styka w codziennej pracy.
To kwestia firmy, a nie dziedziny.

0

@Saalin: Tak, chodze teraz na rozmowy kwalifikacyjne i dzis wlasnie oblalem test z algorytmow. Uczylem sie caly tydzien i niestety... Nie zrobilem zadnego progresu, bo nie mam do tego talentu. Natomiast jesli chodzi o pytania techniczne wychodze swietnie, moje portfolio zadziwia, test ze softskills'ow to samo a pozniej przyhodzi test z algorytmow i polegam. Jestem zalamany.

1

Możesz opisać przykład pytań z którymi miałeś problemy?

0

@devRandom: To raczej nie gra roli. Jesli chcesz ocenic moje zdolnosci z algorytmow to zapewniam - tak, jestem totalna ameba.

0

@omenomn2: Dzieki za pocieszenie. Mi sie wydaje ze problemem jest moje portfolio bo mam tam duzo gier i dlatego chyba przyciagam tego typu firmy. Wydaje im sie ze kazda gra wymaga nie wiadomo jakiego zaawansowanego AI i algorytmow z kosmosu, a tu taki zonk, bo moje gry uzywaja moich swojskich rozwiazan ktore przypominaja gume przylepiona do cieknacej rury - dzialac dzialaja ale nie tak sie to robi.

3

Chodzi mi o to że jest pewien poziom poniżej którego to nie jest algorytmika tylko podstawy programowania - na przykład zdarzają się osoby które nie są w stanie zaimplementować stosunkowo prostej logiki - na przykład pogrupowania jakiejś listy obiektów po jakimś kryterium albo dopasowanie obiektów po kluczu, albo prostej maszyny stanów - i jeśli to jest problemem to tutaj raczej trzeba wrócić do podstaw i popracować nad tym niż tego unikać.

0

@lion137: Dlatego od algorytmow mamy takich programistow jak ty. Od ogarniania bibliotek, architektury, testowania itd sa tacy programisci jak ja. Wirtuozowie algorytmow raczej nie klepia CRUD'ow i tez nie pracuja jako testerzy bo by sie po pierwsze zanudzili a po drugie szkoda takich talentow na takie taski. W dzisiejszych czasach nawet Scrum Master jest potrzebny. Sa rozne dziedziny programowania, to nie tylko algorytmika, chociaz dobrze jest znac podstawy.

1
Noob1980 napisał(a):

Nie zrobilem zadnego progresu, bo nie mam do tego talentu.

Obawiam się, że do algorytmów talent nie jest niezbędny, niezbędna jest za to ciężka praca. Algorytmy na poziomie rekrutacyjnym to nie jest jakieś rocket science, da się tego nauczyć, ale tu nie chodzi o czytanie o algorytmach czy naukę na pamięć! Trzeba mieć jakieś pojęcie o różnych schematach postępowania (jakieś dziel i zwyciężaj czy programowanie dynamiczne), ale najważniejszą rzeczą jest praktyka. Teraz jest o tyle łatwiej, że jest masa stron na których można to interaktywnie ćwiczyć.

Poza tym naprawdę warto byłoby, żebyś podał przykład takiego zadania z rekrutacji mimo wszystko, bo teraz nie wiadomo czy mówimy o algorytmach algorytmach czy jakiś pierdach typu Fibonacci w O(n).

W ogóle to mamy tu do czynienia z jakąś formą efektu Dunninga-Krugera, bo z jednej strony jesteś zajebisty, tylko masz braki w algorytmach, ale z drugiej strony sam piszesz, że:

Noob1980 napisał(a):

moje gry uzywaja moich swojskich rozwiazan ktore przypominaja gume przylepiona do cieknacej rury - dzialac dzialaja ale nie tak sie to robi.

0

@devRandom: No i tu lezy pies pogrzebany bo od sortowania sa dzisiaj biblioteki, bo nie mow mi ze za kazdym razem w pracy od nowa implementujecie np quicksorta? Stworzylem juz duzo aplikacji bez potrzeby sortowania. Jest duzo aplikacji gdzie takich operacji sie nie robi. W infotainment w Androidzie raczej trzeba znac biblioteki i sam system Android a nie jakies tam algorytmy sortowania.

4

No ok, ale powiedzmy że sortowanie to jest nietrywialny algorytm - ale jeśli nie jesteś mi w stanie czegoś pogrupować po atrybucie to reprezentujesz poziom poniżej około 90% kandydatów.

0

@Saalin: Gdzie niby napisalem ze jestem zajebisty? Mowie ze CV swietnie dziala i wszystko inne tez skoro dostaje odpowiedzi. Tworzenie aplikacji to jedno, algorytmy to drugie. Flappy Bird cos ci mowi? Czy ta gra wymagala nie wiadomo jakich algorytmow? Dziala? Dziala. To nie jest radiant AI a jednak gra sie nazywa i gosciu zarobil na niej wiecej niz ty zarabiasz na swojej algorytmicznej wirtuozerii. I nie zrozum mnie zle, szacun za twoje umiejetnosci. Jednak nie zbaczajmy z tematu. Pytanie jest o dziedziny programowania gdzie na rekrutacji nie ma zadan z algorytmow, gdzie nacisk jest na inne skille. Znasz jakiejs?

1

czy jakiś pierdach typu Fibonacci w O(n)

Byś się zdziwił, ile ludzi, na rekrutacjach, by na tym "pierdzie" poległo.
No i:
https://blog.codinghorror.com/why-cant-programmers-program/

2
Noob1980 napisał(a):

Pytanie jest o dziedziny programowania gdzie na rekrutacji nie ma zadan z algorytmow, gdzie nacisk jest na inne skille. Znasz jakiejs?

No to na pewno nie programowanie, bo nawet przy CRUDach robi się czasami jakieś DFSy po złożonych strukturach xD Co prawda ludzie nawet nie mają pojęcia, że to DFS albo już nie pamiętają, ale nie zwracają na to uwagi. Trudno mi sobie wyobrazić jakiegokolwiek programistę, który zarabia na tym co robi, a jednocześnie nie umie policzyć wysokości drzewa i stęka przy tym, że on CRUDy miał robić, a tu algorytmy są.

Może faktycznie te devopsy wspomnianie na początku, chociaż i tam ludziom zdarza się programować.

btw. nie robię wirtuozerii, w zasadzie z algorytmami mam wspólne tylko złe wspomnienia.

0

@devRandom: A ja sie teraz ciebie zapytam. A ty masz jakis projekt? Jakas apke? Cos co stworzyles i jest gdzies do sciagniecia? Cos co ma guziki i robi cos konkretnego i jest komus do czegos przydatne? Czy tylko tak sortujesz sobie dane w command prompt'cie od rana do wieczora jak 90 % kandydatow?

1

Nieco zbyt oczywisty troll.

3

A na ilu rozmowach byłeś że się tak bardzo zniechęciłeś do tych algorytmów? Jak firma ma 100 kandydatów na jedno stanowisko, to musi jakoś odsiać ziarno od plew (bez urazy). Możliwe że trafiłeś na słabe źródła do nauki, które np. wymagały już jakichś podstaw, żeby dobrze to ogarnąć, poza tym piszesz że uczyłeś się algorytmów przez CAŁY tydzień i nic to nie dało.

Obniż wymagania, to nie jest temat który ogarniesz w tydzień, czy miesiąc. I tu nie chodzi o to, że będziesz musiał w pracy implementować quicksorta, ale chodzi o sens i wyczucie, żebyś na każdym kroku nie walił kodu o złożoności wykładniczej bo tym sposobem wyłożysz pierwszą lepszą produkcyjną apkę.

0

@masochista: Tak, zdaje sobie z tego sprawe. Teorie jako tako umiem, gorzej z implementacja. Mi chodzi bardziej o to ze nie chce sie pchac w dziedziny gdzie jest duzy nacisk na algorytmy, bo po co tracic czas na rozwijanie czegos w czym sie jest beztalenciem? Lepiej rozwijac dalej swoje naturalne talenty. Tez nie kazdy wirtuoz algorytmow jest swietny z achitektury, wzorcow projektowych, design'u i tak dalej, dlatego w branzy istnieje podzial na role. Wirtuoz algorytmow zazwyczaj jest zatrudniany wlasnie do swojej roli, nie robi testow, nie uczy sie tysiaca frameworkow, bo szkoda jego talentu. Chyba ze pracuje w januszeksie jako czlowiek orkiestra, ale ja mam na mysli powazne firmy.

0

@devRandom: Teraz rozumiem, skad te ciagle pytania rekruterow o softskillsy. Czasami sobie mysle na co te testy psychologiczne? Teraz sie nie dziwie.

2

Ale o co właściwie chodzi?

Przecież liczba stanowisk / działek gdzie faktycznie szukają wymiataczy z OI+ to jakaś garstka, więc generalnie powiedziałbym że (wszyscy - garstka) nie szukają cudów z algorytmów

1

Ale to też chodzi o zdrowy rozsądek i fundamenty programowania.

Hipotetycznie mamy dwóch programistów i jeden nigdy nie słyszał o złożoności obliczeniowej i zadanie typu "szukanie wielu liczb w dużej tablicy" rozwiąże liniowo (czyli masz milion liczb, to przelatujesz przez milion elementów), a drugi programista będzie jednak wiedział, że można trzymac liczby w posortowanej tablicy i później je wyszukać binarnie, i dzięki temu nawet w dużej tablicy szukanie będzie bardzo szybkie.

Można mówic, że nie każdy programista pisze algorytmy, tym niemniej jakaś podstawowa wiedza jednak się przydaje, żeby później nie pisac koszmarnie niezoptymalizowanego kodu zamulającego całą apkę. Nawet jeśli będziesz korzystac z gotowych bibliotek, to dalej trzeba jednak wiedziec, po co są te biblioteki.

0

@Snatch and Pizza: Sorry, ale co ma architektura kodu do sortowania? I skad zakladasz ze mialem problem z sortowaniem? Ja napisalem tylko ze do sortowania uzywam bibliotek. Widzisz ty nie umiesz czytac ze zrozumieniem, ale jakos dajesz rade z algorytmami. Nieumiejetnosc jednego nie wyklucza drugiego. Jak na razie nikt jeszcze nie odpowiedzial konkretnie na pytanie tego watku. I to jest forum wirtuozow logiki. Ja sie pytam o dziedziny nie wymagajace algorytmicznej wirtuozeri a tam kazdy sobie cos pisze. Logiczna odpowiedzia na takie pytanie jest na przyklad: DevOps, Tester, nie wiem cokolwiek. Jak widac umiejetnosc rozwiazywania algorytmicznych problemow udowadnia tylko to ze umie sie rozwiazywac algorytmiczne problemy. Z tego co widac ta umiejetnosc nie przeklada sie na ogolne logiczne myslenie, skoro wiekszosc piszacych tu watkowiczow nie potrafi prowadzic logicznej komunkacji.

0

@LukeJL: W zupelnosci sie zgadzam. Teorie i podstawy ktore wykulem znam. Nie potrafie natomiast zaimplementowac wiekszosci sam. Sczegolnie jesli sa to problemy ktorych nie widzialem wczesniej.

W kazdym badz razie, moze zalozcie o tym osobny watek w jakims offtopicu?
A tak do tematu: To co polecacie? Bo zaczynam zalowac ze zalozylem tu konto. Ta dyskusja zaczyna przypominac przepychanki Grazyn na Onecie a nie dyskusje uzdolnionych logicznie ludzi.

1

tak jak pisałem wcześniej - no w Polsce to pewnie w większości firm nie trafisz na algo, np. jakieś software housy itp. (a przynajmniej ja się nie spotkałem)

0

Tak, jest webówka w polskim wydaniu(sklejanie crudów, pisanie tych samych apek/stronek gdzie po 2-3 latach będziesz robił to samo), albo utrzymaniówka starych projektów. Czyli jakieś 90% polskiego rynku pracy. Na szczęście to się powoli zmienia.
No i zależy też od języka programowania za jaki się zabierzesz.

5

Jezeli zaimplementowanie DFSa to wirtuozja algorytmiki to dodanie 2+2 to wirtuozja matematyki

image

0

@stivens: Mialem nie odpisywac, no ale po prostu nie moge. Musze cie sciagnac z powrotem na ziemie. Rozumiem jesli uwazasz moje skille za slabe (Chociaz zaskocze cie: Mozna byc totalna ameba z algorytmiki a mimo to tworzyc aplikacje ktore swietnie dzialaja i z ktorych ludzie maja pozytek i je kochaja), ale jesli ty porownujesz algorytm nad ktorym przez lata pracowali matematycy i doktorzy dziedziny Computer Scienece do znajmosci dwa plus dwa, to niezle odleciales i masz ego z kosmosu. Nie wysmiewasz mnie, tylko wysmiewasz tych ludzi i ich prace, Wszystkie grafy i popularne algorytmy to wieloletnia i zmudna praca matematykow i akedemikow ktore bufon taki jak ty moze pozniej co najmniej wykuc na pamiec i trenowac cudza implementacje od rana do wieczora a potem samomasturbowac sie swoja wiedza na forach programistycznych.

Jesli DFS jest taki prosty, to nie mialbys dzisiaj pracy, bo pracodawca wolalby zatrudnic sympatyczna fryzjerke do implementacji DFS a nie kolesia ktory wdeptuje ludzi na forach w ramach osobistej psychoterapii i leczenia kompleksow. DFS jak 2 + 2 ? To czemu nie uczymy tego jeszcze w pierszwej klasie podstawowki? I jak to mozliwe ze w Polsce mamy tylu programistow ktorzy z palcem w nosie wala DFS'em ale to w Izraelu tworza Pegasusa, w Stanach Amazona, Facebook'a, Google, Tesle?

Powiem ci dlaczego. Dlatego ze liczy sie pomysl i gotowa aplikacja. Zuckerberg zaprogramowal facebooka, ale teraz inni sortuja mu dane w czasie gdy on gra w golfa. Moze jak kiedys ktoras z moich aplikacji odniesie sukces, to cie zatrudnie do algorytmow. Bedziesz mi implemntowal grafy, a ja bede sobie siedzial w domu na balkonie i palil sobie papierosa.

3

Pokaż te zadania z interview.

1 użytkowników online, w tym zalogowanych: 0, gości: 1