Dlaczego dyplom z informatyki ma znaczenie dla profesjonalnego programisty? [Zamknięte]

63

Mam dyplom z informatyki. Doskonale nadaje się do otwierania drzwi, zdobywania pracy. Jeśli chodzi o pomoc w profesjonalnej dziedzinie programowania w języku C # .NET (najpopularniejsza platforma i język w obszarze, w którym pracuję, jeśli nie całe stany zjednoczone, jeśli chodzi o najpopularniejszy system operacyjny na świecie), jest to mało przydatne. Jak myślisz, dlaczego pomaga ci to jako programista w karierze zawodowej (poza algorytmem prims, aby zaimponować niektórym ankieterom)?

W dzisiejszym świecie adaptacja, szybki umysł, silna komunikacja, OO i podstawowe umiejętności projektowe umożliwiają programistom pisanie oprogramowania, które zaakceptuje klient. Te umiejętności są odczytywane tylko w programie cs. Moim zdaniem, przeczytanie 500-stronicowej książki C # autorstwa Wroxa oferuje znacznie bardziej użyteczny zestaw umiejętności niż 4 lata kursów blasterowych dla matematyki naukowej. Wielu się nie zgadza. Dlaczego więc stopień informatyki ma znaczenie?

P.Brian.Mackey
źródło
59
„Informatyka to nie tylko komputery, ale astronomia to teleskopy”. - Edsger Dijkstra
Eric Lippert
4
Zapamiętywanie to za mało. Edukacja wymaga wiedzy na temat korzystania z Reg Ex i doświadczenia, aby wiedzieć, kiedy go używać. Obejmowałbym czytanie książek jako część edukacji. Doświadczenie zawodowe rzadko zachęca do robienia rzeczy we właściwy sposób.
Zachary Scott
10
Ma to znaczenie, gdy go nie masz
Aditya P
2
Miałem też 2.8, całkiem przeciętnie. Ale uczono nas głównie języka C / Java i niektórych rzeczy internetowych, bez języka C #. W każdym razie myślę, że CS to „następna najlepsza rzecz”, ponieważ 4-letnie programy CS nie są do końca łatwe i pokazuje, że możesz ciężko pracować, aby uzyskać dyplom. Dlaczego to w ogóle ma znaczenie? dostaniesz pracę!
1
@ luis.espinal Podważam te statystyki. Wątpię, czy 70% całego kodu jest w C (pomyśl o cichym tukaniu w Fortran, COBOL, PL1 i Rexx). Z pewnością wiele, ale zdecydowana większość, jestem sceptyczny. Istnieje wiele urządzeń osadzonych, ale liczba urządzeń osadzonych nie mówi nic o oryginalnym źródle. Po napisaniu dla pierwszego określonego urządzenia, ogólnie jest dobre dla wszystkich kolejnych urządzeń tego samego; i przypuszczalnie wiele jest ponownie wykorzystywanych dla bliskich instrumentów pochodnych, czy to w tej samej linii późniejszej wersji, czy w innej linii z tej samej rodziny produktów.
JustinC,

Odpowiedzi:

133

Dlaczego stopień informatyki ?:

  • Pracowałem z programistą, który przechował tysiące elementów w HashTable, a następnie tylko iterował po wartościach. Nigdy nie uzyskiwał dostępu przez skrót. Najwyraźniej nie wiedział, jak działa HashTable ani dlaczego miałbyś go używać - stopień CS może w tym pomóc.
  • Pracując z wyrażeniami regularnymi, osobom z podstawową teorią automatów i językami formalnymi wydaje się łatwiej rozumować, co się dzieje, i rozwiązywać problemy z wyrażeniami - może pomóc w tym stopień CS.
  • Deweloper pochodzący ze szkoły może być w stanie natychmiast rozłożyć problemy w różnych mentalnościach paradygmatu (OO, funkcjonalny, logiczny), podczas gdy nowy programista niebędący dyplomem potrzebuje doświadczenia, zanim będzie mógł zrobić to samo.
  • Szkoły uczą złożoności obliczeniowej. Deweloperzy niebędący dyplomami mogą czuć się najlepiej, ale formalne zrozumienie jest czasem przyjemne, szczególnie gdy wyjaśnia się koledze wyniki.
  • Stopień oferuje wprowadzenie do wielu modeli maszyny - sprzętu, systemu operacyjnego, wspólnych struktur danych, sieci, maszyn wirtualnych. Mając te modele na głowie, łatwiej jest stworzyć przeczucie, że problem występuje, gdy coś pójdzie nie tak. Ponownie, programiści niebędący dyplomami budują te same modele, ale zajmuje to dużo czasu.
  • Porady ekspertów w każdej dyscyplinie mogą pomóc uczniowi uniknąć ślepych zaułków i pominiętych tematów. Czytanie jest świetne, ale nie zastąpi wielkiego nauczyciela.

Nie oznacza to, że dyplom CS jest niezbędny, aby być świetnym programistą. Ledwie. Niektórzy z najlepszych programistów, z którymi współpracowałem, nie mają dyplomu. Stopień daje początek. Do czasu ukończenia nauki (mam nadzieję) napisałeś sporo kodu w różnych językach i środowiskach, aby rozwiązać wiele rodzajów problemów. Dzięki temu jesteś na dobrej drodze do 10 000 godzin wymaganych do bycia ekspertem.

Drugą korzyścią jest to, że pokazuje pracodawcom, że jesteś w stanie osiągnąć długoterminowy cel i odnieść sukces. W wielu firmach uważam, że jest to ważniejsze niż to, czego się nauczyłeś.

Corbin March
źródło
4
+1 - To ma sens. Porady ekspertów prawdopodobnie pomogły mi w sposób, którego nie rozpoznaję. Nadal zastanawiam się, czy 4 lata edukacji ogólnej przeważają 4 lata doświadczenia w branży, zakładając, że obaj programiści są w równym stopniu zmotywowani do nauki. Jest pewien poziom dyscypliny, którego, jak sądzę, nie miałem przed ukończeniem studiów, co na pewno się liczy.
P.Brian.Mackey
4
Nauczenie się właściwej terminologii i spędzanie czasu z innymi ludźmi uczącymi się tego samego materiału to także korzyści, które towarzyszą temu drogiemu kawałkowi papieru.
sal
65
Z drugiej strony widziałem osoby ze stopniem naukowym, które wciąż nie zdają większości z tej listy :)
Joel Gauvreau,
1
Ojej, pewnie też słyszeli o teorii grafów. Może to nieco uprościć dzielenie aplikacji na klientów i serwery, sieci, DAG i drzewa.
Tim Williscroft,
3
@JustinC - Twoje stwierdzenie „posiadacze dyplomów zwykle bronią ich z jakiegokolwiek powodu, ponieważ je mają” jest jednym z podstawowych powodów, dla których zadałem to pytanie. Widziałem tę ślepą irracjonalną obronę z pierwszej ręki. Prawda jest również odwrotna.
P.Brian.Mackey
87

Za 40 lat spodziewam się, że .NET i C # będą niczym więcej, jak ogromną stertą starszego kodu w przestarzałych systemach operacyjnych.

Ale podstawowe koncepcje informatyczne będą tak samo żywe, jak wtedy, gdy Shannon, von Neumann, Knuth, Dijkstra, Hoare i inni wykopali je z podstaw logiki formalnej i matematyki ... ponad 40 lat temu.

Paul Nathan
źródło
28
+1 - bardzo prawda, ale za 40 lat nic mnie nie obchodzi.
P.Brian.Mackey
3
@ P.Brian.Mackey: Domyślam się, że za 10 lat C # będzie w drodze, a za 20 będzie bardziej wspomnieniem, a za 30 lat będzie wymagało siwych archeologów o siwych włosach . Ludzie, którzy przywiązują się do danego zestawu narzędzi, ulegają obsesji. Miałem szczęście przeczytać stare artykuły na temat oprogramowania systemowego z przełomu lat 70. i 80. ubiegłego wieku. Z tych systemów oprogramowania bardzo niewiele jest na dzisiejszym radarze. Może 1 lub 2 (Unix i Lisp). Chociaż dzisiejsza baza instalacyjna jest większa, spodziewam się podobnej rzeczy.
Paul Nathan
4
@ P.Brian.Mackey Powiedz, co chcesz, ale planuję nadal kopać za 40 lat i za 80 lat, jeśli mam coś do powiedzenia w tej sprawie.
Matthew Scharley,
2
@Paul Nathan: Aby wspomnieć o tym, niektóre podstawowe podstawy programowania pochodzą z lat 30. XX wieku (np. En.wikipedia.org/wiki/Church%E2%80%93Turing_thesis ). Zastanawiam się, czy / jak będziemy pisać kod za 80 lat :)
phooji,
3
@phooji (ładuj „legacy-c-sharp-routines” ...): P
Mark C,
37

Używam prawie wszystkich CS, które studiowałem w szkole (*) każdego dnia w pracy. Jeśli chcesz pracować w projektowaniu języka programowania, optymalizacji pod kątem wyszukiwarek, analizie ilościowej lub w podobnej dziedzinie, przypuszczam, że możesz to zrobić bez odpowiedniego stopnia, ale wydaje się, że musisz się wiele nauczyć. Nie jestem szczególnie dobrze wykształcony, biorąc pod uwagę moją linię pracy; wielu moich kolegów ma doktoraty z informatyki, a kilku z nich było profesorami CS.

Zdobycie dyplomu było dla mnie ogromnie warte; zwrócił się wiele, wiele razy zarówno w dolarach, jak i satysfakcji.

To powiedziawszy, całkowicie rozumiem twój punkt widzenia. Większość ludzi programujących komputery ma prace, które nie wymagają dyplomu CS; wymagają one, powiedzmy, solidnego zaplecza na poziomie społeczności w praktycznym programowaniu oraz nadążania za aktualnymi trendami w branży. I w porządku. Nie potrzebujesz dyplomu z biologii morskiej, aby prowadzić udany sklep akwarystyczny, i uważam, że sklepy akwariowe są niesamowite. Ale to jest strasznie trudno dostać pracę w Woods Hole, jeśli wszystko wiesz jak zrobić to podnieść rybki.


(*) Mam licencjat z matematyki stosowanej i informatyki z Waterloo.

Eric Lippert
źródło
4
Pamiętam, jak jeden z moich profesorów CS powiedział coś takiego, że tylko 2% z was faktycznie dostanie pracę, w której będziecie regularnie zajmować się zasadami informatyki .
czerwony brud
15
@el fuser: Rzeczywiście; Ciekawe pytanie, być może nierozerwalnie związane z dyskusją, czy celem szkolnictwa wyższego jest jedynie szkolenie w zakresie określonej pracy? Nie wierzę, że tak jest. Uniwersytety nie są szkołami zawodowymi; ich funkcją jest tworzenie wiedzy poprzez badania i wystawianie studentów na ten wszechświat wiedzy. Wydaje mi się, że to może dać uczniom umiejętności pracy raczej jako efekt uboczny niż cel. W Waterloo powiedziano nam wyraźnie, że nauczą nas teorii, a nie praktyki.
Eric Lippert,
1
Tworzenie oryginalnych badań w środowisku kolegialnym, jednak ogólnie i niezależnie od programu, rzadko zdarza się przed wyjściem poza okres szkolenia zwany programem licencjackim. Badania zdarzają się wcześniej, ale ogólnie rzecz biorąc, badania nad naprawdę nowym materiałem są zarezerwowane dla osób studiujących na studiach magisterskich lub doktoranckich. Innymi słowy, często kieruje się od odkrycia, ale w kierunku wzmocnienia tego, co już wiadomo. Badania licencjackie to bardziej proces badawczy niż rozwój jakiejkolwiek wiedzy. Prywatne badania mają inny cel.
JustinC
1
Dzień, w którym najlepsze prace nie wymagają już dyplomu, to dzień, w którym uniwersytety nie mają już studentów, którzy mogliby wspierać ich programy.
P.Brian.Mackey
jak często korzysta z Andersa;)
Matthew Whited,
22

Ma to znaczenie, ponieważ technologia nie pozostaje statyczna. Informatyka jest podstawą wszystkich technologii cyfrowych. Większość programistów samouków trwa dokładnie jeden cykl technologiczny, ponieważ brakuje im podstaw, aby przetrwać poważną zmianę paradygmatu. Oczywiście są wyjątki od tej reguły, ale mocne podstawy w informatyce znacznie zwiększają szanse na przetrwanie dużej zmiany paradygmatu.

-obrotowy bit-twiddler
źródło
4
Nie wiedziałem, co to za dziwak, dopóki nie przeczytałem Coders At Work . Zgaduję, że przeżyłeś zmianę paradygmatu lub dwie i mówisz z doświadczenia. :)
Dave Neeley,
3
Nie zgadzam się. Łatwo jest uzyskać dostęp do zasobów, które uczą podstawowych pojęć w Internecie (i jest satysfakcjonujące, aby zyskać możliwość samodzielnego ich znalezienia). Na przykład academicearth.org/subjects/computer-science jest dobrym miejscem do rozpoczęcia. Szczegółowe informacje o nowszych wzorach architektonicznych są bezpłatnie dostępne do studiowania, patrz chromium.org/developers/design-documents/… . Często bezpłatnie dostępne materiały online są znacznie lepsze i bardziej aktualne niż te, których można oczekiwać od lokalnej uczelni.
Evan Plaice,
13
Myślę, że masz to dokładnie odwrotnie. Programista nigdy się nie uczy. Samouczni programiści wykazali się umiejętnością zdobywania wiedzy bez konieczności formalnego ustalania, narzucanych z zewnątrz terminów itp., Co jest dokładnie tym, czego trzeba, aby przetrwać zmiany na rynku.
Błoto
2
(ciąg dalszy) Jeśli mówisz o zmianie paradygmatu oprogramowania ... Jaka zmiana paradygmatu? OOP nie jest całkiem nowy, nie jest też programowaniem funkcjonalnym. Bazy danych istnieją już od bardzo dawna. Numery zmiennoprzecinkowe są znormalizowane od 1985 r. (IEEE 754). Jedyną istotną zmianą, jaką widzę, jest przejście na systemy przetwarzania dystrybucyjnego (systemy o ogromnej sieci, które skalują się w porównaniu do systemów w górę i programów korzystających z wielu podstawowych platform sprzętowych), a także przejście do znormalizowanego międzynarodowego zestawu znaków (UTF-8); oba nie są tak naprawdę uwzględnione w compsci.
Evan Plaice,
2
@Mud and Evan: Wydaje mi się, że przegapiłeś część mojego postu „Jasne, są wyjątki od rządzenia”. Zakładam, że oboje jesteście młodzi i nieobciążeni. Ta dynamika zmieni się z wiekiem. Jestem w terenie od ponad trzydziestu lat. Widziałem, jak wielu programistów-samouków wypala się po tym, jak pojawia się stres związany z wychowywaniem rodziny, a ilość czasu, jaką trzeba nauczyć się podstaw na własną rękę, zbliża się do zera. Chciałbym mieć tę samą rozmowę, kiedy oboje osiągną wiek 40
bitowego Twiddler
14

To zależy, co chcesz zrobić. Jeśli Twoim celem jest głównie programowanie oprogramowania biznesowego na dużą skalę, w którym problem biznesowy i praktyczne problemy z zarządzaniem złożonością są trudne, to tak, dyplom CS nie pomoże. Jeśli jednak Twoim celem jest zaprogramowanie rzeczy, w których główna trudność jest po stronie technicznej, stopień CS jest bardziej przydatny. (Chociaż nie mam dyplomu z CS, czuję się jak wielki hipokryta, że ​​to mówię, więc dodawaj „lub samoucz do przedmiotów CS”).

Jestem pewien, że jest wielu programistów, którzy świetnie radzą sobie z zarządzaniem złożonością, programowaniem w dużych i rozwiązywaniu typowych problemów biznesowych, ale byliby całkowicie zgubieni, gdyby poprosić ich o napisanie alokatora pamięci, biblioteki równoległości lub biblioteka kolekcji, system operacyjny, kompilator itp. Jestem pewien, że jest też całkiem odwrotnie. Oba mają swoje miejsce i zasługują na szacunek, ale dyplom CS pomaga znacznie bardziej od strony technicznej.

dsimcha
źródło
Dlaczego? CS polega na rozwiązywaniu złożonych problemów, bez względu na naturę problemu. CS powinien być użyteczny, nawet jeśli w ogóle nic nie programujesz - jest to potomek zapomnianej, ale wciąż niezbędnej cybernetyki.
SK-logiczny
12

Nie sądzę, aby stopień CS był absolutnym wskaźnikiem tego, że dana osoba jest dobrym programistą. W rzeczywistości rozpocząłem karierę jako programista z dyplomem z matematyki, ale z silnym nastawieniem na CS (matematyka i CS były włączone do mojego programu studiów). Myślę, że istnieją dwa powody, dla których to ma znaczenie.

1 - Ponieważ inżynierowie nie są frontonem do rekrutacji

Ludzie są ludźmi. I chociaż wyobrażam sobie wielu ludzi przewracających oczami, mówię „dzięki Bogu!” Co jest ważniejsze - że pozwalasz inżynierom robić rzeczy (lub łamać je), lub że każesz im sortować tysiące życiorysów i przeprowadzać tysiące wywiadów?

Mamy więc pracowników HR i pracowników HR, którzy sprawdzają kandydatów, aż dojdziemy do kluczowej grupy, która może zostać sprawdzona przez inżynierów. Pracownicy działu HR nauczyli się z czasem, że posiadanie dyplomu CS jest dość silnym wskaźnikiem, że kandydat wie coś o tworzeniu oprogramowania. Mam nadzieję, że wiedzą także, że oprogramowanie do pisania od 20 lat jest dobrym wskaźnikiem, że kandydat może pisać oprogramowanie.

2 - Ponieważ posiadanie jakiegoś systemu na temat uczenia się o CS jest lepsze niż żadne

CS to ogromna dziedzina, w której można wiele wiedzieć. I cały czas się zmienia. W dzisiejszych czasach mogę śmiało powiedzieć, że 75% zajęć w mojej szkole licencjackiej stało się nieistotne dla mojej kariery. I że zajęcia mojego mistrza sprzed 5 lat gwałtownie tracą na wartości. Ale kiedy zaczynałem, cieszyłem się, że zapłaciłem dużej instytucji za nauczenie mnie czegoś o organizacji komputera, sieciach, dobrym procesie inżynierii oprogramowania, projektowaniu obiektowym, kompilatorach oraz składni / semantyce ważnego języka programowania, który jest obecnie dostępny na rynku.

Cieszyłem się, że było to w środowisku, w którym ktoś zapłacił mi za wyjaśnienie, kiedy projekt książki / strony internetowej / okrążenia nie był z natury oczywisty.

I cieszyłem się, że mam dostęp do laboratorium, w którym zdrowie komputera i SDE nie były moim problemem - mogłem mniej lub bardziej się zamknąć i skupić na niewielkiej części problemu, zamiast konieczności naprawy wszystkich narzędzi potrzebnych do rozwiązania problem.

I chociaż kursy nie uczyły wyraźnie dobrej komunikacji, myślę, że jedynym sposobem, aby naprawdę się tego nauczyć, jest praca w zespołach - co stanowi znaczną część wielu wiodących instytucji oferujących stopnie CS.

I harmonogram z częstymi opiniami (tj. Stopniami i egzaminami), które dadzą mi znać, czy naprawdę rozumiem, czego mnie nauczono.

Te rzeczy łączą się w mojej opinii, aby były warte więcej niż jakakolwiek książka na ten temat, ale z pewnością nie jest to wszystko, koniec. Z pewnością nie mam nic przeciwko temu, by instytucje szkolnictwa wyższego poprawiły się i myślę, że około 10 lat po ukończeniu studiów stopień, który pierwotnie uzyskałeś, jest mniej ważny niż praca, którą wykonałeś.

bethlakshmi
źródło
12

Dla mnie powodem jest to, że wiem, że przeszli ciężkie kursy i się nie poddali. Niektóre kursy, takie jak kompilatory, struktura danych, matematyka dyskretna (i inne) miały tendencję do usuwania wielu osób z programów CS. Posiadanie dyplomu CS oznacza, że ​​ciężko pracowałeś i zapłaciłeś cenę (długie noce przygotowujące programy do pracy), zamiast wychodzić dla zabawy.

Chris L.
źródło
+1 - lol, nie mogę się z tym dużo kłócić. Chociaż uwielbiałem dyskretną matematykę. Świetny profesor, który zrobił wiele wrażeń z Yody.
P.Brian.Mackey
10

Dla mnie jest to kwestia sposobu myślenia .

Twój sposób myślenia określa, w jaki sposób podejdziesz do danego problemu i pozwala ci rozważyć szerszy zakres możliwości niż te, których nie wyszkolono w koncepcjach.

Typowym przykładem jest problem „Traveling Salesman”, w którym wiesz, że 1) jest NP-zupełny dla ogólnej wersji, więc musisz wypróbować wszystkie możliwości, ale 2) że jeśli wiesz więcej o problemie, możesz albo przybliżyć określony limit lub powiedz, że wiesz, że prąd przemienny jest zawsze dłuższy niż AB + BC (co jest prawdą w przypadku odległości, ale nie cen), co pozwala rozwiązać go w krótszym czasie.

Innym przykładem jest analiza numeryczna, w której musisz wiedzieć, że aby zminimalizować niedokładność liczbową, musisz podchodzić do obliczeń inaczej niż w matematyczny sposób. Wymaga to wiedzy teoretycznej i jest mało prawdopodobne, że zostaniesz zebrany po drodze, chyba że zostaniesz przez nią wyraźnie ugryziony.

użytkownik1249
źródło
9

Naprawdę? Łał.

Więc mówisz mi, że umiejętności C # i OOP są wystarczające i możesz opracować własny algorytm losowego sortowania i rozszyfrować niuanse, jak radzić sobie z NP całkowitymi problemami w prawdziwym życiu?

C # i OOP są w porządku, ale jeśli próbujesz zrobić coś, co nie jest trywialnym projektem logiki, potrzebujesz podstaw informatyki.

Koleś, nie będziesz nawet wiedział, którego kontenera C # użyć, jeśli twoje struktury danych lub umiejętności algorytmów nie są na poziomie.

Teraz dorośnijmy.

Fanatyk 23
źródło
23
Spokojnie, tygrysie.
whatsisname
23
„opracuj własny algorytm losowego sortowania i odszyfruj drobniejsze niuanse, jak radzić sobie z kompletnymi problemami NP w prawdziwym życiu”, nie mogę wystarczająco podkreślić, jak wiele z mojej codziennej pracy składa się z tych działań ... / sarkazm
quentin-starin
4
Mówię o tym, że 95% osób, z którymi pracuję i z którymi pracowałem w przeszłości, spędza prawie 0 czasu na opracowywaniu algorytmów. Większość czasu spędzam, aby kod był bardziej zwięzły i czytelny. Bardzo mało czasu spędza się na „drobniejszych niuansach”. W rzeczywistości byłoby dla mnie interesujące spędzić trochę czasu przynajmniej na uporządkowaniu przepływu pracy na tablicy ... coś, co zrobiłem tylko sam. Czy regularnie rozmawiasz z NP o swoich współpracownikach? W jakim obszarze pracy musisz pisać niestandardowe rodzaje zamiast implementować funkcjonalne języki programowania?
P.Brian.Mackey
3
@ P.Brian.Mackey: Tworzenie oprogramowania to zawód up lub out. Ilu programistów pracuje dla Twojej organizacji w wieku powyżej 50 lat? W miarę starzenia się programisty stopień CS może oznaczać różnicę między pracą a brakiem zatrudnienia. Chociaż obecnie posiadam licencjat i magisterium z informatyki, pod koniec lat siedemdziesiątych otrzymałem wstępne szkolenie w tej dziedzinie w szkołach technicznych marynarki wojennej i DoD. Wszyscy faceci, z którymi służyłem, którzy nie zadali sobie trudu zdobycia dyplomu CS po opuszczeniu wojska, nie są już w terenie.
bit-twiddler 17.03.11
7
Dlaczego wydaje się, że wszyscy ślepo akceptują założenie, że wymagany jest formalny program nauczania CS w college'u, aby mieć jakąkolwiek wiedzę na temat koncepcji CS? Może to porażka ich dedukcyjnego rozumowania. Chyba potrzebują więcej kursów CS.
quentin-starin
6

Przypuszczam, że tak naprawdę nie byłeś zbytnio zaangażowany w ten stopień, po prostu wziąłeś to, czego potrzebowałeś i wyszedł, lub poszedł do szkoły, która patrzyła na kierunki CS jako „koderzy”, a nie „programiści”. Ponadto niektóre z moich najlepszych / ulubionych zajęć z „CS” to te, które - przynajmniej na moim uniwersytecie - znajdują się w dziale elektrotechniki. Moja ekspozycja na różne architektury i style była bardzo ważna, a mój stopień naukowy ułatwił mi to w „kontrolowanym” środowisku.

Klasy, które nie są tylko algorytmami i uroczym puchem:

  • Kompilatory
  • System operacyjny
  • VHDL / systemy wbudowane
  • Montaż i mikrokontrolery
  • Inżynieria oprogramowania

I wreszcie klasa, która mnie pobiła, czyli algorytmy i struktury danych - sztuczna inteligencja. Są rzeczy, które przejście przez system uniwersytecki znacznie przyspieszy proces uczenia się, i uważam, że to, czego się nauczyłem, jest nieocenione, gdy później poszukuję pracy.

Jeff Langemeier
źródło
Jaka jest twoja definicja „programisty” i „programisty”? Dla mnie mogą być takie same i są sprzeczne z „informatykiem”.
Mark C
Coder po prostu pisze kod, niekoniecznie myśli o różnych paradygmatach projektowych lub procesach myślowych, które mają zastosowanie do tworzenia lepszego kodu. Programiści faktycznie myślą o pisanym przez siebie kodzie i podchodzą do niego z góry na dół, a nie na dole z góry.
Jeff Langemeier
Jaka jest twoja definicja „małpy kodowej” i „programisty”? Programista może zastanowić się, w jaki sposób rozwiązać problem, którego nie mogą zarobić pieniądze z kodu ...
Coyote21,
Pasja nie jest przyznawana przez stopień. To tylko część tego, kim jesteś.
P.Brian.Mackey
@ P.Brian Czasami tak się zdarza, że ​​twoja pasja przyznaje stopień, a dodatkowo jest stymulowany przez osiągnięcie tego stopnia.
Jeff Langemeier
4

Moim zdaniem, chyba że ubiegasz się o stanowisko „Computer-Science”, każdy stopień sugerujący skupienie się na umiejętnościach komputerowych jest prawie równoważny.

W rzeczywistości wielu programistów, których znam, uzyskało dyplom z zupełnie innej dyscypliny. Najlepsi programiści, których znam, mają stopnie naukowe z inżynierii lądowej, językoznawstwa, ekonomii i finansów.

W końcu, gdy zdobędziesz trochę doświadczenia, twój stopień staje się testem zaliczającym kandydata. Oznacza to, że dopóki nie zdobędziesz go w imponującej szkole lub na studiach podyplomowych, nie ma znaczenia, jaki był twój kierunek.

rev JohnFx
źródło
Jednym z najlepszych programistów jest ekonomista pracujący wyłącznie w Excel / VBA i R. Zrobił niesamowite rzeczy w Excelu.
sal
@sal Pisanie rzeczy w Excelu i R nie wymaga dyplomu CS. Pisanie w Excelu lub R. najprawdopodobniej by to zrobiło.
Alnitak,
@alnitak - Pisanie Excela lub R również nie wymaga dyplomu CS. To w pewnym
sensie
@JohnFX: Ukończyłem z wyróżnieniem łacińskim jeden z dwudziestu najlepszych programów CS w Stanach Zjednoczonych, a sama wiedza wciąż mnie prowadzi do drzwi (posiadam również MSCS z innej renomowanej szkoły). Zaczynałem w tej dziedzinie jako zatrudniony operator komputerowy i programista zaraz po ukończeniu szkoły średniej. Pierwsze szkolenie w zakresie systemów komputerowych i oprogramowania otrzymałem od Marynarki Wojennej USA i Agencji Bezpieczeństwa Narodowego; dlatego przez wiele lat pracowałem w terenie bez BSCS. Wszystko, co mogę powiedzieć, to to, że dosłownie rozdzieliło się niebiosa, kiedy ukończyłem BSCS.
bit-twiddler
@ bit-twiddler - czy to ma wspierać czy obalić moją odpowiedź? Wygląda na to, że potwierdza moje ostatnie stwierdzenie, że ma to znaczenie, jeśli masz stopień podyplomowy lub duże imię i nazwisko.
JohnFx,
4

dla mnie i wielu moich kolegów nie ma (żaden z nas nie miał dyplomu CS)

Shawn
źródło
3

OK, a co z tym

Jeśli przejrzałeś następujące tematy:

a. Architektura i organizacja komputerów

b. Inżynieria oprogramowania

c.DBMS

d.Podstawowa elektronika

mi. Podstawowy cyfrowy układ elektroniczny

f. mikroprocesor

g. Projekt kompilatora

Czy myślisz, że wszystkie powyższe dotyczą wyłącznie formalności? Pamiętaj, że powyższe punkty sprawiają, że „dobry programista” jest „doskonałym programistą”.

Przejdź przez to, aby przeczytać o znaczeniu zagadnień elektrycznych i elektronicznych

Radheshyam Nayak
źródło
3

Mam dyplom z informatyki. Doskonale nadaje się do otwierania drzwi, zdobywania pracy. O ile mi pomaga w dziedzinie profesjonalnego programowania (C # .NET najpopularniejszej platformy i języka w obszarze pracuję jeśli nie całych Stanach Zjednoczonych na ręce w dół najpopularniejszego systemu operacyjnego na świecie ) jego ledwo użyteczny.

Ponad 70% kodu jest napisane w C (ponieważ jest więcej urządzeń wbudowanych niż aplikacji wysokiego poziomu). Zgodnie z popularnymi ofertami pracy, takimi jak kości lub indeks TIOBE, Java jest najpopularniejszym językiem programowania dla przedsiębiorstw (ponieważ jest więcej serwerów wewnętrznych Unix / Linux niż serwerów Windows). Jest więcej smartfonów i tabletów (platforma obliczeniowa przyszłość) z systemem Linux lub Mac OS innym niż Windows, zaprogramowanym na dowolnym urządzeniu poza C # lub .NET.

Spójrz na swój router w domu, spójrz na swój telefon komórkowy, spójrz na komputer w samochodzie, spójrz na dziwaczną kuchenkę mikrofalową w domu, na kontrolery w twoim domowym systemie klimatyzacji, wewnątrz telefonu, faksu roboczego i drukarki / skaner. Spójrz na liczbę skomputeryzowanych urządzeń (które przewyższają liczbę systemów Windows).

Czy uważasz, że są one zaprogramowane w języku C #?

Jeśli naprawdę wierzysz, że .NET lub C # są najpopularniejszymi platformami na świecie, możesz wrócić do szkoły CS i poprosić o zwrot pieniędzy.

Jak myślisz, dlaczego pomaga ci to jako programista w karierze zawodowej (poza algorytmem prims, aby zaimponować niektórym ankieterom)?

Może dlatego, że programowanie to coś więcej niż tworzenie dynamicznych stron internetowych i aplikacji dla przedsiębiorstw? Do tego nie potrzebujesz nawet dyplomu BS, wystarczy AA - wiem, ponieważ rozpocząłem karierę programistyczną z dyplomem AA i powoli, ale pewnie pracowałem w kierunku CS, a następnie przeszedłem do szkoły wyższej , pracując w pełnym wymiarze godzin jako programista .

Istnieje rozwój wbudowany, rozwój sterowników urządzeń, rozwój systemów operacyjnych, rozwój algorytmów, sygnałów, komunikacji, protokołów sieciowych, rozwój silnika bazy danych, rozwój systemu plików, przetwarzanie rozproszone, kompilatory. Nie badania, ale rzeczywista praca w organizacjach nastawionych na zysk. Pomijając naturalnie utalentowanych, zwykle nie można zhakować go w żadnej z tych dziedzin przemysłowych bez dyplomu CS (czasami nawet z dyplomem BS).

Osoba, która uzyskała dyplom CS i zwraca na to uwagę, wie o tym. Dlaczego nie?

W dzisiejszym świecie adaptacja, szybki umysł, silna komunikacja, OO i podstawowe umiejętności projektowe umożliwiają programistom pisanie oprogramowania, które zaakceptuje klient.

OO powstało z powodu CS. I większość ludzi, którzy myślą, że robią to, nie może nawet wykonać dobrej roboty. Wystarczy spojrzeć na zewnątrz i spojrzeć na kiepski stan oprogramowania (w szczególności w Javie i .NET, nie wspominając o PHP.) Solidne tło CS (lub dyplom z inżynierii) nie gwarantuje 100% dobrego zrozumienia OO i umiejętności analityczne, ale zazwyczaj pomaga. OTH, brak podstawowego tła CS jest zwykle czerwoną flagą, jeśli chodzi o OO i umiejętności analityczne. W branży mamy wystarczającą liczbę dowodów empirycznych na poparcie tego twierdzenia.

Te umiejętności są odczytywane tylko w programie cs.

W zależności od programu CS i w zależności od ucznia. Przynajmniej dla mnie widziałem wiele dobrych kursów z zakresu projektowania, analizy OO, narzędzi i praktyk komercyjnych, mieliśmy wspólne kursy z lokalnymi firmami i stażami, finansowane przez korporację projekty i badania, pisanie techniczne, to tak. Niestety nie mogę powiązać ani zrozumieć tego oświadczenia.

Moim zdaniem, przeczytanie 500-stronicowej książki C # autorstwa Wroxa oferuje znacznie bardziej użyteczny zestaw umiejętności niż 4 lata kursów blasterowych dla matematyki naukowej.

Ponownie, w zależności od wykonywanej pracy. Nawet w przedsiębiorstwie korzystałem z mojego CS do naprawiania lub ulepszania. Wszystko to obejmuje modelowanie, architekturę, przetwarzanie rozproszone, bezpieczeństwo i wysoką wydajność, wysoką dostępność i odporność na uszkodzenia. Nauczyłem się tego wszystkiego w CS.

Nie ma nic złego w używaniu książkę Wrox dostać kontekstowe specyficzne , technologicznie specyficzny zestaw umiejętności. Robię to sam. Ale moje tło CS daje mi kontekst do pracy. Bez mojego doświadczenia w CS wszystko, co mógłbym zrobić, to programować, kodować (to wszystko, co mogłem zrobić, gdy miałem tylko stopień AA na początku mojej kariery).

Wielu się nie zgadza.

Zaskakujące, nie jest.

Dlaczego więc stopień informatyki ma znaczenie?

Jak myślisz, kto wymyślił wyszukiwarki Google, Hadoop, Cassandra lub wysokowydajne silniki baz danych? Jak myślisz, kto napisze jądro systemu operacyjnego Windows? Jak myślisz, kto programuje ukochane narzędzia, których używasz do programowania C #.

Jedno jestem pewien, że narzędzia, których używasz do programowania w C #, stoi za tym CS.

To, czy potrzebujesz dyplomu CS, zależy od rodzaju wykonywanej pracy, rodzaju pracy, którą chcesz wykonać, rodzaju pracy, którą możesz wykonać.

Dużo pracy w przedsiębiorstwie i tworzeniu stron internetowych nie wymaga dyplomu CS. Przyznaję to. Wiem także, że świat programowania jest znacznie szerszy niż tylko te dwie dziedziny, z wieloma dziedzinami (większość z nich faktycznie) wymaga dyplomu CS lub więcej.

Masz tytuł CS, skąd nie wiesz, że to tajemnica.

luis.espinal
źródło
TIOBE to bzdura do określania, ile języka programowania jest używane. Jest to miara popularności danego języka w Internecie (pod względem liczby odsyłaczy), a nie pod względem pisanych wierszy kodu.
Billy ONeal,
Ze względu na zmienne specyficzne dla języka, LOC są nieistotne we wszystkich językach programowania, a zatem nie można ich używać do pomiaru użycia języka programowania w różnych branżach. Popularność wyszukiwań języka w Internecie działa jako częściowy wskaźnik głębokości i zainteresowania wykorzystaniem (lub jego brakiem) ... jeśli zdajesz sobie sprawę z nieuniknionego uprzedzenia. Sam w sobie ** wskaźnik TIOBE nic nie znaczy - tylko głupiec pomyślałby inaczej; i tylko głupiec pomyślałby, że o tym mówię.
luis.espinal
W połączeniu z innymi wskaźnikami (takimi jak poszukiwanie pracy i rozwój rodzaju produktu) pomaga oszacować trendy w wykorzystaniu technologii. Innymi słowy, jest użyteczny lub bezużyteczny w zależności od tego, do czego go używasz, jak go używasz i od jakich innych wskaźników się łączy.
luis.espinal
Chodzi mi o to, że wydaje się, że używasz tego indeksu, aby wypowiedzieć się na temat używania języka programowania, co nie jest tym, co ten indeks mierzy. Popełniłem błąd, kiedy powiedziałem napisane LoC - ale nie ma dobrego sposobu na powiedzenie „ilość napisanego kodu”, co miałem na myśli. TIOBE to konkurs popularności. W tym wyścigu Java zdmuchnie wszystkich innych, dopóki będzie to linqua franca wstępnych kursów programistycznych. (Nie dlatego, że to oznacza, że ​​ci uczniowie nie wiedzą nic więcej, ale ponieważ studenci są zwykle głośniejsi niż profesjonaliści. (Tzn. Naprawdę twoi)
Billy ONeal
1

Są pewne podstawy, które pamiętam na moich kursach CS, które czasami były całkiem przydatne. Proces wodospadu i jego etapy były czymś, z czego korzystałem wielokrotnie w mojej karierze, z pewną odmianą dla Agile, gdzie nie jest tak sztywny w krokach, ale istnieją te same kroki.

Czasami pomocne mogą być również umiejętności rozwiązywania problemów i różne algorytmy heurystyczne. Jest coś, co można powiedzieć o pośrednich korzyściach z tytułu dyplomu CS. Na przykład nauczenie się, jak uzasadnić odpowiedź, aby pokazać, dlaczego coś jest poprawne, to tylko jedna z niewielu umiejętności, które udoskonaliłem na uniwersytecie, ale nie jestem pewien, jak oczywiste byłoby, że jest to korzyść na koniec programu.

JB King
źródło
1

Zgadzam się z opinią Thorbjørna Ravna Andersena dotyczącą sposobu myślenia. To jest główna rzecz, którą rozwijasz dzięki dobremu programowi CS.

Zasadniczo sprowadza się do zrozumienia rzeczy takich jak struktury danych i algorytmy. Nie dlatego, że nie możesz się tego nauczyć, ale dobry program CS zapewni lepszą ekspozycję.

George Marian
źródło
Są inne przedmioty, których uczą się tylko kierunki CS i inżynieria komputerowa, takie jak organizacja komputerów i architektura komputerów. Nauczenie się, jak budować komputery z logiki sekwencyjnej i kombinacyjnej sprawia, że ​​jest się lepszym programistą, ponieważ daje wgląd w to, co naprawdę dzieje się wewnątrz komputera. Co więcej, pierwsi programiści, którzy pracują z nowym procesorem, muszą zrozumieć takie pojęcia, jak pamięć hierarchiczna i operacje we / wy, potoki, asocjacyjne pamięci podręczne zestawów bloków, jednostki sterujące (mikrokodowane i przewodowe) oraz różnica między przetwarzaniem skalarnym i wektorowym.
bit-twiddler
W jaki sposób kolegialne badanie CS zapewni lepszą ekspozycję niż w laboratorium, w którym tak naprawdę ma to znaczenie, z wykwalifikowanym mentorem, który wie nie tylko, jak powinien działać i jak to naprawdę działa?
JustinC,
@bit Zgoda. Tak, moja odpowiedź jest raczej krótka. Z jakiegoś powodu tak miało być.
George Marian
@ justin Nie jestem pewien, co próbujesz powiedzieć. Ilu programistów pracuje w laboratorium, a co dopiero z wykwalifikowanymi mentorami?
George Marian
@JustinC: Jeden uczy się, jak działają rzeczy w laboratorium (poziom technika). Dowiadujemy się, dlaczego rzeczy działają na wyższych kursach organizacji i architektury w komputerach (poziom inżyniera). Jeśli kupisz kilka podręczników wyższych uczelni dotyczących architektury komputerów i organizacji komputerów, zobaczysz, co mam na myśli.
bit-twiddler
1

Pisanie

W rozwoju oprogramowania dla przedsiębiorstw bardzo ważna jest umiejętność pisania kodu i pisania . Rozumiem przez to: pisanie wiadomości e-mail, raporty o błędach, dokumenty techniczne itp. Zarówno pisanie, jak i kodowanie wymaga jasności myślenia i odpowiedniej ekonomii wypowiedzi.

Założę się, że między dwoma programistami jest to, że ten z dyplomem CS na solidnym uniwersytecie (silny program CS i wymagane przedmioty humanistyczne) ma obie umiejętności. (To prawda, że ​​to nie jest gwarancja: ludzie humanistyki mogą być świetnymi programistami i pisarzami z najwyższej półki; wiele stopni CS to maszyny do pisania, które nie potrafią pisać itd.)

Czytanie

Mój mentor twierdził, że może oceniać programistów na podstawie tego, co czytają. Oryginalny post wspomina o książkach WROX. Moim zdaniem, osoba z dyplomem CS jest bardziej skłonna do poszukiwania takich profesjonalnych książek IT i być w stanie efektywnie z nich korzystać. Jeśli ktoś potrafi obsłużyć CLR , to może obsłużyć „Professional C #”.

Matematyka

Matematyka rozwija logikę, dowód, rygor itp., A efektem ubocznym jest pomoc w pisaniu. Chociaż większość informatycznych firm nie wymaga intensywnych umiejętności matematycznych, osoba z dyplomem CS będzie je mieć w razie potrzeby. To znacznie lepszy sposób na przejście przez życie niż życie bez niego i zastanawianie się, co przegapiłeś w szkole.

Michael Easter
źródło
1

Myślę, że to naprawdę zależy od jakości programu CS, przez który przeszedłeś. Wiem, co masz na myśli, większość kodu, który piszę na co dzień, jest po prostu standardem VB.Net, pobieram dane z SQL Server, umieszczam je w formularzu, zapisuję z powrotem do bazy danych, robię raporty. Umyj, spłucz, powtórz. (Czasami bardzo nudno) Program CS, przez który przeszedłem, oprócz omówienia teorii i podstawowej wiedzy, nauczył wielu praktycznych rzeczy. Obejmowaliśmy takie obszary, jak projektowanie oprogramowania, projektowanie baz danych i zarządzanie projektami. Nauka języków programowania była łatwą częścią, a projektowanie i metodologię tworzenia systemów oprogramowania zabrałem z doświadczenia w college'u. Dostawaliśmy projekty oparte na problemach ze świata rzeczywistego, czasem nawet projektując systemy oprogramowania dla innych działów na terenie kampusu.

Jako programiści mamy oczywiście możliwość samodzielnego uczenia się, co jest koniecznością w naszej dziedzinie. Muszę powiedzieć, że bardzo się cieszę, że przeszedłem program CS. Moi profesorowie byli niesamowici i sporo mnie nauczyli. Moi koledzy z klasy byli świetnymi zabawnymi ludźmi i spędziliśmy wiele zabawnych nocy w pracowni komputerowej. Prawdę mówiąc, tęsknię za czasami ......

Kratz
źródło
1

Wszystko polega na możliwości życia zastępczego.

Jeśli opuścisz dyplom, prawdopodobnie będziesz musiał uczyć się lekcji w bardzo osobisty sposób (inaczej trudny). Brak dyplomu nie oznacza, że ​​pójdziesz trudniejszą drogą uczenia się metodą prób i błędów; stopień ten gwarantuje jednak ekspozycję na skrzynię skarbów z wcześniej zdobytą wiedzą, którą inni musieli zarobić do późnych godzin nocnych, sfrustrowanych sesji programistycznych i ogólnie „robić to ciężko”.

Naprawdę doskonała osoba nie odrzuci tego, co inni uznali za prawdę, ale będzie ją kwestionować, dopóki nie pozna ograniczeń wiedzy, a następnie bawi się „systemem” nowo zdobytych pomysłów, dopóki nie uczyni tego własnym. Stoi na ramionach tych, którzy przybyli wcześniej, i żyje rozwiązaniami minionych lat bez konieczności ich ponownego odkrywania.

Oczywiście osoba z dyplomem informatyki nie zawsze jest lepszym kandydatem. Są te wyjątkowe osoby, które zostały doprowadzone do strumienia, ale (z jakiegoś dziwnego powodu) odmawiają picia z niego.

Edwin Buck
źródło
0

Mam 21 lat i właśnie ukończyłem licencjat CS. Uważam, że niezależnie od tego, jak świetnie programujesz, jeśli jesteś absolwentem CS, będziesz już narażony na różne dziedziny. Więc jeśli chcesz nauczyć się nowych rzeczy, nie bój się odkrywać, nawet jeśli jest to nieistotne . Jeśli jesteś ekspertem w dziedzinie technologii lub języka programowania, dobrze. Ale nie sądzę, że będziesz ryzykowny i chętny do spojrzenia na inne technologie. Tak się brudzisz (i też szybko). Nie będziesz żałował, że to, co odkryjesz, nie będzie miało znaczenia, ponieważ nie pomoże ci zarobić pieniędzy. (Studiowałeś już wiele nieistotnych rzeczy w swoim CS UG;)).
To właśnie pasja w CS, którą masz po ukończeniu studiów, czyni cię specjalistą od oprogramowania.
Czy ktoś się zgadza?

Ranjanmano
źródło
1
Nie możesz założyć, że ktoś nie będzie zainteresowany „badaniem innych technologii” tylko dlatego, że nie ma dyplomu CS. To jest błąd.
Steven Striga
0

Cóż, kiedy wszedłem do CS, myślałem, że wow, jestem naprawdę dobry i nie będę się tutaj niczego uczyć ... Po 5 latach nauczyłem się pracować tylko jako zespół i kilka rzeczy od inżynierii, która oddziela mnie od kogoś, kto potrafi pisać tylko kod i od kogoś, kto potrafi pomyśleć o tym, co robi przed napisaniem kodu. Krótko mówiąc, nauczył mnie myśleć, zanim jeszcze piszę choćby jedną literę w edytorze tekstu lub ide.

Coyote21
źródło
0

Zdobycie pracy w języku open source nie oznacza przysiadu. Większość firm rekrutuje na podstawie umiejętności, a nie kwalifikacji, a języki, takie jak PHP, mają reputację hobbystów, którzy twierdzą, że ludzie mogą mieć talent bez wcześniejszego studiowania CS. Jedyny raz pomaga to, jeśli dostajesz pracę w językach .Net, ponieważ większość hobbystów nie będzie chciała wydawać tysięcy na licencję, tylko po to, aby się zepsuć w weekendy, dlatego ktoś szukający pierwszej pracy w C # prawdopodobnie będzie miał tylko 2-3 lata doświadczenia.

Oczywiście doświadczenie komercyjne jest naprawdę cenne, ponieważ pokazuje, że jesteś w stanie dostarczyć wysokiej jakości kod do terminów.

Podsumowując, uzyskuje się wywiady za pracę z językami otwartymi.

Adam Pointer
źródło
0

Dyplom Collegue lub University oznacza, że ​​studiowałeś i masz trochę wiedzy na temat CS, kilku podstawowych rzeczy, które są wymagane do pracy w świecie rzeczywistym, nawet jeśli musisz uczyć się innych rzeczy samodzielnie.

Poza tym, kiedy rekruter IT musi znaleźć Soft. Dev. I 500 kandydatów wysyła swoje CV i musi przeprowadzić wywiad z co najmniej 50 z nich, posiadając stopień naukowy na CV, pomaga zarówno rekrutacji, jak i szansom na zatrudnienie.

(od programisty, który studiował niektóre HHRR)

umlcat
źródło
0

Prawdopodobnie to niewiele pomaga, ale teraz, kiedy nauczyłem się montażu i całej wiedzy, czuję się bardziej kompletnym programistą i jestem pewien, że to się powtórzy, kiedy pójdę na uniwersytet. Mam na myśli, że głównie używam C lub VB, nie muszę wiedzieć, co to jest stan oczekiwania, aby wykonywać moje programy, ale po prostu wiem, co dzieje się za moim kodem jest świetne! A wiedza pomaga pisać lepszy, szybszy i łatwiejszy w utrzymaniu kod. Stopień informatyki daje moim zdaniem wiedzę niezbędną do napisania świetnego kodu.

Czarny niedźwiedź
źródło
0

inżynieria oprogramowania jest dzisiaj nauką eksperymentalną, a nie matematyką stosowaną.

Stopnie informatyczne podkreślają algorytmy, jak wiele codziennej pracy wiąże się z wdrażaniem, a nawet stosowaniem nowych algorytmów i struktur danych?

Ile wiąże się z radzeniem sobie z warstwami szkieletów i nieszczelnymi abstrakcjami? Ile próbuje ustalić, co faktycznie robi niektóre API - a nie to, co sugerują dokumenty? Ile kosztuje testowanie i decydowanie o tym, jak testować?

Mimo wszystko stopień fizyki lub chemii jest znacznie lepszym treningiem niż zapamiętanie Knutha

Martin Beckett
źródło
0

Ma to znaczenie, ponieważ osoby rekrutujące mają wskaźnik, że nie jesteś całkowicie nieświadomy tego, co powinieneś zrobić, ale niekoniecznie oznacza to, że naprawdę wiesz, co robisz lub że robisz to w dogodny technicznie sposób.

Są genialni ludzie ze stopniami, którzy kochają to, co robią i są naprawdę dobrymi programistami, a także idioci ze stopniami, którzy są naprawdę złymi programistami i nawet nie znają pewnych podstaw. Są genialni ludzie bez stopni, którzy potrafią wszystko opracować (oprogramowanie biznesowe / kompilatory / system operacyjny), a także idioci bez stopni, którzy nie wiedzą, jak prawidłowo używać tablicy hasht.

Sokół
źródło
0

Absolutnie poprawne, stopień informatyki nie ma większego znaczenia; dlatego twoim jedynym wyborem powinno być uzyskanie dyplomu inżyniera.

Podczas przeprowadzania wywiadów z kandydatami o różnym pochodzeniu, wyróżniającą się cechą kandydatów, którzy nie mieli żadnego stopnia, jest: brak technicznych umiejętności komunikacyjnych i brak dyscypliny. Są to podstawowe cechy nabyte przy zdobywaniu jakiegokolwiek stopnia naukowego (powiedziałbym jeszcze bardziej z dyplomem inżyniera).

Ponieważ większość rzeczy jest równa (a podczas jednej rundy wywiadów często pojawia się „mniej więcej równy” kandydat), najpierw zatrudniam osobę z wykształceniem inżynieryjnym, z informatyki drugą, a trzecią bez stopnia. Istnieją jednak sposoby, aby sprawić, że sytuacja będzie bardzo nierówna w porównaniu, aby każdy mógł pokonać nawet osoby z rodowodem - ale to osobne pytanie, prawda?

Jonathan Cline IEEE
źródło
-1

Dla programisty ... to niewiele (poza otwarciem drzwi do wywiadów, jak powiedziałeś).

Do pracy w CS (badania, analiza algorytmów, formalna nauka języka i projektowanie). Jest mało prawdopodobne, abyś nauczył się tych rzeczy w jakimkolwiek innym programie nieopartym na matematyce.

// Oświadczenie: mój stopień naukowy w zakresie informatyki, więc musiałem wrócić do wszystkich innych kursów, aby wykonać w mojej branży.

iivel
źródło
-1

Mam stopień naukowy związany z komputerem. To, co pomogło mi w zdobyciu mojej pierwszej roli komputera, to fakt, że 3. rok był miejscem pracy jako administrator IT. Polecam programy staży w ramach edukacji.

TeaDrinkingGeek
źródło