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?
źródło
Odpowiedzi:
Dlaczego stopień informatyki ?:
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ś.
źródło
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.
źródło
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.
źródło
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.
źródło
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.
źródło
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ś.
źródło
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.
źródło
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.
źródło
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.
źródło
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:
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.
źródło
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.
źródło
dla mnie i wielu moich kolegów nie ma (żaden z nas nie miał dyplomu CS)
źródło
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
źródło
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.
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?
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.
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.
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).
Zaskakujące, nie jest.
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.
źródło
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.
źródło
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ę.
źródło
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.
źródło
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 ......
źródło
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.
źródło
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?
źródło
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.
źródło
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.
źródło
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)
źródło
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.
źródło
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
źródło
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.
źródło
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?
źródło
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.
źródło
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.
źródło