Niedawno zostałem odrzucony z kolegium, które wcześniej mnie przyjęło, z powodu tego, że spędziłem rok liceum w obcym kraju, a uczelnia nie była zainteresowana uznaniem wykształcenia uzyskanego w innym kraju. Z tego powodu wyschło bardzo hojne stypendium, a finansowanie edukacji jest wątpliwe. Waham się również, aby stać się częścią systemu, który wykazał coś, co uważam za rażącą ksenofobię.
To, co chcę zrobić, to powiedzieć „Pieprzyć uczelnię”, samemu wykreślić i zrobić coś niesamowitego, zachwycić wszystkich i stać się milionerem. Rzeczywistość jest taka, że jestem dwa tygodnie po ukończeniu szkoły średniej, mam mniej więcej równowartość kursu wstępu do programowania wartego samodzielnego uczenia się (chociaż jestem zmuszony do nauki i doskonalenia się), wciąż muszę zapłacić rachunki i mam podejrzane podejrzenia, że każdy pracodawca będzie miał trudności z potraktowaniem mnie poważnie.
Jak rozumiem, to dość popularne przekonanie, że możesz to zrobić bez dyplomu, ale jak robi to ktoś taki jak ja? Czy ktoś wziąłby mnie na poważnie, gdybym wszedł do ich biura i powiedział: „Nie mam formalnego wykształcenia i minimum umiejętności, ale chcę pracować i chcę się uczyć. Proszę, daj mi pracę”.
Odpowiedzi:
Byłem na tej samej pozycji co ty i wybrałem tę „pieprzoną uczelnię”, o której mówisz. Miałem zamiłowanie do tworzenia oprogramowania, hobby C ++ oprócz podstawowego kursu programowania HS i marzenia. Teraz jestem profesjonalnym programistą, więc dam ci moje doświadczenie.
Po 1 roku nauki w college'u (miałem pełne stypendium dla teatru technicznego), zorientowałem się, że lubię oprogramowanie bardziej niż scenografię.
1 rok- Zacząłem swoją „własną rzecz”, która polegała na wspieraniu komputerów stacjonarnych do płacenia czynszu i rozwoju. Opracowanie wszystkiego, co mógłbym zrobić, dla każdego, kto tego chciał, za ułamek ceny. Patrząc wstecz, prawdopodobnie robiłem aplikacje o wartości 20 000 USD za 1000 USD. Zaczynanie na własną rękę jest naprawdę do bani, ponieważ nawet jeśli masz doświadczenie, aby wiedzieć, że jest to aplikacja o wartości 20 000 USD, nie masz wiarygodności, aby o nią poprosić. A co najgorsze, nie mam pojęcia, czego nie wiem i nie ma wokół mnie innych programistów. Tworzyłem aplikacje, które były koszmarami konserwacji. Nie miałem umiejętności w zakresie architektury i wzorców projektowych, więc po prostu robiłem rzeczy, które się wysadziły i wspierałem sieć, by płacić rachunki. Dużo Taco Bell, zmieszanych z „cóż, przynajmniej nie pracuję dla mężczyzny”. Mam marzenia o aplikacjach do pisania i eksploracji świata,
Rok 2 - Stanie się nieco lepszym programistą poprzez nauczenie się, czego nie robić i obserwowanie, jak wybuchają mi w twarz. Ledwo radzę sobie z obsługą komputera, uczeniem się serwerów i tworzeniem stron internetowych. To musi być łatwiejsze niż praca dla mężczyzny, ale nie mam prawdziwego portfolio, więc kontynuuj.
Rok 3- Zaczynam rozumieć. Kiedy klikam Plik> Nowy projekt, mam niejasne pojęcie o tym, gdzie chcę iść i jak budować. Wciąż wybierając niewłaściwe architektury, usługi sieciowe wydają się całkiem fajne, więc dlaczego nie zbudować WSZYSTKIE z nich? Potrzebujesz aplikacji na kalkulator? Zbuduję serwis internetowy! Zaczynam zbierać kilku klientów, będąc informatykiem i kilkoma projektami oprogramowania po drodze. Jedną z rzeczy, które zrobiłem, było stworzenie usługi Offsite Backup za pomocą usług sieciowych, więc moim marzeniem było być „Mozy”, podczas gdy wszyscy wciąż zamieniali taśmy. Internet szerokopasmowy właśnie stawał się powszechny, więc wyprzedziłam krzywa i to był mój pomysł na milion dolarów. Ale usługa miała problemy (z powodu mojego braku umiejętności architektury),
Rok 4 - Wreszcie klient wierzy we mnie w przypadku długoterminowego projektu. Udaje mi się to bez poważnego zepsucia; kod nie jest świetny, ale działa. Zaczynając łapać rachunki, mogę współpracować z kilkoma innymi programistami (sfałszować to, aż to zrobisz, prawda?), A nawet odpowiedzieć na kilka pytań na temat wymiany ekspertów. O tak.
Rok 5 - Jeśli jeszcze tego nie zauważyłeś, te sny z 1. roku życia nie zostały jeszcze napisane, więc zaczyna być trochę przygnębiające. Mam przyzwoity portfel rzeczy, które z powodzeniem napisałem, mam spory rozpęd i dobrą bazę klientów. Nadal tak naprawdę nie wiem, czego nie wiem, a nawet wyłamuje się.
Lata 5–8 - połączę je, ponieważ jest to bardziej to samo: „zrób projekt, naucz się trochę na każdym, przenieś to doświadczenie do następnego”. Dzisiaj jest środek 8 roku i dopiero w ostatnim roku lub dwóch zostałem dobrym programistą. Te sny z pierwszego roku zostały już wiele razy wymyślone przez kogoś innego. Jeśli nie zgadłeś, nie stworzyłem Mozy'ego.
Po drodze miałem nowe marzenia i nowe pomysły, a niektóre były dobre, niektóre były okropne. Mam teraz umiejętności, aby je zrealizować, a niektóre z nich się dzieją, i to jest ekscytujące. Mam jednak wrażenie, że gdybym zrobił inaczej, mógłbym znacznie skrócić tę podróż.
Nie mogę mówić o tym, jak inaczej szkoła zmienia tę podróż; Pozostawię to innym w tym wątku. Ale porady, które dam:
Jestem pewien, że mógłbym kontynuować, ale zabawne jest to, że widziałem to pytanie podczas pracy nad jednym z tych snów i musiałem na nie odpowiedzieć. :) Powodzenia.
źródło
Bez wątpienia idź na studia.
Osobiście zrobiłem to bez college'u (nie mówiąc, że jestem milionerem, ale mam dobrą pracę w firmie, w której uwielbiam pracować), ale to trudna droga. Początkowo jesteś za wszystkim . Matematyka, algorytmy, systemy operacyjne, wszystkie rzeczy, które otrzymujesz podczas formalnej edukacji (a niektóre z nich, np. Rachunek różniczkowy, są bardzo trudne do nauczenia się na ciebie, nawet przy dostępie do rzeczy takich jak matematyka. SE).
Będąc świeżo po ukończeniu szkoły średniej, możesz dostać się do działu kontroli jakości i zacząć chłonąć wszystko, co możesz. Ścieżka od kontroli jakości do programisty lub inżyniera może być trudna, ponieważ istnieje (czasem słaba) uogólnienie na temat osób przybywających z kontroli jakości, które próbują dostać się na ścieżkę dewelopera.
Osiągnięcie tego bez dyplomu jest wykonalne, ale niezwykle trudne i wymaga tyle samo szczęścia i współpracy, co umiejętności.
Mimo, że uwielbiam to, co robię i jestem dumny z moich osobistych osiągnięć, nigdy nie poleciłbym tego nikomu, kto ma taką zdolność i jest w dobrej sytuacji, aby przejść program studiów.
źródło
Dzięki obecnemu CV nie dostaniesz pracy jako programista, więc nawet nie zawracaj sobie tym głowy.
Jeśli nie możesz lub nie chcesz iść na studia, będziesz musiał zdobyć trochę doświadczenia na własną rękę. Jest to trudny sposób, ale można to zrobić. Aplikacje mobilne to dobry sposób na rozpoczęcie pracy, ponieważ bardzo łatwo możesz zaprezentować swój produkt prawdziwym użytkownikom. Innym rozwiązaniem może być udział w projektach typu open source. Lub po prostu napisz coś na własny użytek. Na początku nie zarobisz na tym żadnych pieniędzy, a przynajmniej nie na tyle, by zarabiać na życie - więc prawdopodobnie również będziesz potrzebować regularnej pracy. Miej oko na możliwości uzyskania taniej edukacji; niektóre uczelnie pozwalają ci wziąć udział w kursach bez zaliczenia za ułamek zwykłego czesnego.
Zrób to przez kilka lat, a następnie możesz rozpocząć wysyłanie CV. Zakładając, że nadal chcesz zarabiać na życie.
Powodzenia.
źródło
Hmm ... to trudne. Myślę, że to naprawdę zależy od twojej natury jako osoby.
Gdybyś naprawdę znał treść około 6 lub 8 książek, byłbyś bardzo solidnym programistą (lata przekraczające to, co produkuje większość programów CS - poważnie). Potraktuj podstawy poważnie; bardzo poważnie - jak religia poważnie (KR może być twoją Biblią).
Pomysł robienia małych projektów jest dobry. Zawsze staraj się poprawić siebie - wybierz kilka ekosystemów i naucz się ich dobrze (1 - powiedz ROR lub Django na Linux z mysql i 2. iOS / Objective C; 2.5. - wrzuć jQuery / HTML).
edit --- z góry mojej głowy, sugerowałbym listę poniżej (w ~ tej kolejności); Mam 9, ale jedna jest książką matematyczną, jedna jest książką skryptową / Java, a ostatnią uważam za opcjonalną. Poza tym jest kilka tematów, które zostałyby omówione w Joel on Software. Myślę, że dzięki temu stałbyś się bardzo silnym programistą - jestem pewien, że inni by się nie zgodzili.
źródło
Zaczynałem jako jeden z tych deweloperów szkółek. Obecnie kończę studia, chociaż mam dobrą, dobrze płatną pracę jako programista.
Zacząłem grać w programowanie komputerowe, gdy miałem około 9 lat. W latach 90. zarobiłem trochę pieniędzy na tworzenie stron internetowych dla przyjaciół, co dało mi pierwsze doświadczenia z wczesną siecią (grałem z javascript, byłem dość zmieszany, gdy pojawił się CSS itp.).
Kiedy byłem nastolatkiem, zdecydowałem, że nadszedł czas, aby naprawdę uczyć się dogłębnie programowania komputerowego, więc przeszukałem Internet na tematy, które powinien znać każdy programista, a potem wydałem wszystko, co miałem, na książki. Kupiłem jedną książkę na temat matematyki dyskretnej, książkę na temat systemu operacyjnego i książkę na temat programowania C w środowiskach UNIX.
Potem zacząłem uczyć się programowania obiektowego w C ++ i po drodze podjąłem Pythona i Javę, dzięki czemu otrzymałem pierwszą pracę (nie opłaciło się to dobrze, ale wkrótce zostawiam tę pracę na znacznie lepszą).
Kiedy dostałem się na studia, czułem się z tego powodu bardzo sfrustrowany. Z wyjątkiem klas takich jak rachunek różniczkowy, statystyczny i języki formalne; Prawie już znałem wszystkie tematy omawiane podczas kursu i równoważenia college'u, a moja praca z każdym dniem stawała się coraz trudniejsza.
College tak mnie sfrustrował, że porzuciłem szkołę i postanowiłem nauczyć się wszystkiego, czego potrzebowałem sam. Więc znowu kupiłem więcej książek, brałem udział w projektach typu open source i ciągle zmieniałem pracę, aby zmuszać się do uczenia się nowych rzeczy.
W zeszłym roku postanowiłem wrócić do college'u (choć nadal mnie to frustruje). Powodem, dla którego zdecydowałem się skończyć college, było to, że teraz mam okazję i nie chcę nigdy żałować, że nie poszedłem na studia.
Tak, tak, możesz pracować jako programista bez dyplomu, ale będziesz musiał dużo się uczyć, podjąć kiepskie prace, gdy jesteś jeszcze początkujący i pokazać każdemu potencjalnemu pracodawcy, że masz wiedzę, doświadczenie i jesteś naprawdę mądry ( w końcu musisz go przekonać, żeby cię zatrudnił, a nie drugiego faceta, który ma dyplom CS). Tylko upewnij się, że rozumiesz struktury danych, algorytmy i analizę algorytmów, wzorce projektowe i niektóre koncepcje systemu operacyjnego.
Moja ostatnia rada: jeśli możesz sobie na to pozwolić, powinieneś iść na studia. Zaufaj mi, teraz będzie o wiele łatwiej, gdy będziesz jeszcze po ukończeniu szkoły średniej i nie musisz się martwić o płacenie rachunków. Bycie programistą bez pójścia na studia działa tylko wtedy, gdy zacząłeś naprawdę wcześnie. Ludzie cię zatrudnią, jeśli masz dyplom, ale nie możesz jeszcze dobrze napisać kodu, teraz, jeśli nie masz dyplomu i nadal nie możesz napisać kodu , nie zostaniesz zatrudniony.
źródło
Jeśli możesz dostać się na uniwersytet, ułatwi ci to zadanie, ale nie jest to konieczne.
Kluczem jest posiadanie rzeczy, które możesz wskazać i powiedzieć: „Zrobiłem to”. Jedynym sposobem na to jest ćwiczenie się od dołu. Zacznij od wykonywania dziwnych prac dla osób, które „potrzebują tylko programisty”. Może sprawdź miejsca takie jak eLance .
Możesz także napisać własne oprogramowanie i je sprzedać. Wybierz jakiś problem, który nie ma jeszcze dobrego rozwiązania na rynku, i napisz program, który go rozwiązuje. Będziesz mógł go sprzedać. Wtedy będziesz miał pewną wiarygodność. Szczerze mówiąc, prawdopodobnie wykonasz gównianą robotę, jeśli będzie to twój pierwszy prawdziwy projekt, ale nauczysz się ton i nadal będziesz sprzedawać kopie, jeśli będzie to przydatne. Kod nie musi być ładny. Użytkownicy widzą tylko interfejs użytkownika.
Doświadczenie jest kluczowe. Na szczęście programowanie jest jednym z tych zawodów, w których prawie nie potrzebujesz żadnych kosztów ogólnych, aby rozpocząć. Po prostu uświadom sobie, że czeka Cię naprawdę długa krzywa uczenia się.
źródło
Pracodawcy chcą przynajmniej jednej z dwóch rzeczy (lub obu): edukacji lub doświadczenia praktycznego. Zazwyczaj zdobycie wykształcenia jest jednym z najprostszych sposobów na dostanie się do systemu, w którym w końcu zaczniesz zdobywać praktyczne doświadczenie. Zdobycie wykształcenia mówi pracodawcy, że będziesz trzymać się czegoś, co jest trudne (a które może czasem wydawać się bezużyteczne i być stratą czasu). Jest to dla nich ważne, ponieważ praca, bez względu na to, jak ją lubisz, nigdy nie będzie łatwa ani przyjemna przez cały czas. Chcą wiedzieć, że tam zostaniesz.
Biorąc to pod uwagę, jeśli zamierzasz spróbować wytyczonej trasy, musisz zdobyć praktyczne doświadczenie. Osobiście zalecałbym spojrzenie na start-upy (zwykle są one nieco bardziej narażone na ryzyko dla kogoś z małym doświadczeniem lub bez doświadczenia). Inną rzeczą do rozważenia jest znalezienie jakiejkolwiek pracy (płacenie rachunków), a następnie poświęcenie czasu na opracowanie projektów, które można wykorzystać jako CV. Gdy masz już mały arsenał projektów, będziesz w znacznie lepszej sytuacji, by zwrócić się do pracodawców i powiedzieć „Oto, co mogę zrobić ...”.
Moją osobistą rekomendacją byłoby pójść do szkoły. Nie ma znaczenia, który z nich, a dzięki dotacjom i stypendiom, które są szeroko dostępne i wykorzystywane, istnieje wiele sposobów finansowania edukacji. W końcu prawdopodobnie będziesz bardzo wdzięczny, że trzymałeś się szkoły, jeśli chciałeś ukończyć studia i uzyskać dyplom.
źródło
Nie jestem w szkole średniej od około 2 lat. Mam już pracę w programowaniu i wziąłem tylko około 20 lub 24 godzin studiów. Jednak po pierwszych dwóch semestrach nie miałem dość czasu i pieniędzy.
Jak dostałem swoją pracę w programowaniu? Zasadniczo szczęście. Ale możesz zwiększyć swoje szanse na szczęście. Powodem, dla którego zostałem zauważony, były niektóre małe programy poboczne, które stworzyłem i pokazałem swoim znajomym. Byłem znany jako „facet od komputera”, a więcej nauczycieli pytało mnie, jak naprawić komputer, niż faktyczny pracownik wsparcia technicznego. Jeden z moich przyjaciół miał małą firmę programistyczną ...
Porada, którą ci dam, to nie przestawaj robić rzeczy. Ucz się i twórz. Stwórz każdy projekt, którego ktokolwiek by chciał. Coś interesującego dla ciebie lub cokolwiek, za co ktoś zapłaciłby ci nawet dziesięciocentówkę. Przyczyniają się również do projektów typu open source. Środowisko zespołowe jest dobre.
Zapoznaj się również z witryną taką jak StackOverflow. Otrzymałem swoją drugą ofertę pracy z zapytania Stack Exchange na StackOverflow, które w zasadzie pokazało wszystkim w Oklahomie .. i byłem osobą o najwyższej pozycji w reputacji.
źródło
Świetne, świetne odpowiedzi tutaj. Dodam również własne doświadczenie.
Programowałem w takiej czy innej formie, odkąd miałem około 5 lub 6 lat (TI BASIC, ktoś?) W 1995 roku dostałem się do Linuksa i zacząłem uczyć się C i Perla. Nigdy nawet nie chodziłem na kurs programowania w liceum, ponieważ w tym momencie uczyli Visual Basic i Visual C ++ i nie interesowałem się żadnym z nich.
Poszedł na studia. CS 101 to „Wprowadzenie do programowania (Visual Basic)”. Został specjalizacją filozoficznym.
Porzuciłem studia. Pracował w CompUSA, zaczął pracować jako niezależny programista.
Pracowałem w kawiarniach lub pracowałem jako pomoc techniczna, ciągle kodowałem na własną rękę ... wykonując wolny zawód i programowanie open source.
Moja pierwsza „prawdziwa” praca z kodowaniem (z „programistą” w tytule) przyszła przez nepotyzm. Przyjaciel opuszczał stanowisko i poprosili go, aby znalazł jego zastępcę.
Teraz dostaję oferty regularnie, moja ścieżka kariery wygląda dobrze, nie martwię się o ten stopień. Ale wracam do niektórych z tych kursów CS ... Mimo że informatyka! = Programowanie w świecie rzeczywistym, nauczysz się algorytmów i (mam nadzieję) wzorców projektowych, które powstrzymają cię przed robieniem głupich rzeczy i ponownym odkrywaniem koła. Więc szkoła nie jest konieczna ... ale pomaga.
Przede wszystkim powiedziałbym, że nawet jeśli musisz iść do szkoły państwowej, a nawet do szkoły wyższej, idź i naucz się jak najwięcej. W wolnym czasie kontynuuj hackowanie projektów typu open source (GitHub to nowe CV, jak mówią), a jeśli pojawi się coś bardziej atrakcyjnego ... nie musisz kończyć. Nie musisz ukończyć studiów, aby obliczyć liczbę punktów i GPA w swoim CV, FWIW.
W każdym razie, powodzenia. Jeśli naprawdę masz pasję do pisania dobrego kodu, to jest klucz. Ale college jest dla większości firm swego rodzaju „zależnością od starszego systemu”.
źródło