Programista WWW lub inżynier oprogramowania? [Zamknięte]

24

Pytanie, które sobie zadawałem i naprawdę myliło, którą ścieżkę wybrać.

Potrzebuję waszej pomocy, jeśli chodzi o zalety i wady tych dwóch zawodów w dzisiejszym świecie. Uwielbiam tworzyć aplikacje internetowe, ponieważ Internet jest najlepszą rzeczą w tym wieku i prawie wszyscy korzystają z Internetu. A także mają tendencję do ciągłego poznawania nowych technologii i usług sieciowych.

Z drugiej strony lubię inżynierię oprogramowania dla aplikacji komputerowych, ponieważ miałem doświadczenie w tworzeniu małych programów w VB.Net, Java, C ++ itp.

Która ścieżka ma większy zakres i lepszą przyszłość? Jaki jest twój widok

Bat_Programmer
źródło
3
Jak dokładnie są te dwa zawody? o_O
dr Hannibal Lecter
2
Podejmuję dokładnie tę samą decyzję ... ale tworzenie stron internetowych mnie wciąga, ponieważ tak łatwo jest uzyskać kontrakty, nawet bez patrzenia.
mpen
1
Nie wiedziałem, że istnieje różnica między inżynierem oprogramowania i programistą. Rzeczy, których się uczysz. :)
Tony
5
Myślę, że masz na myśli „programistę”
Ross

Odpowiedzi:

25

Ściśle mówiąc, inżynieria oprogramowania polega na prawidłowym projektowaniu systemów oprogramowania - bez względu na to, na jakiej platformie (sieć, komputer, urządzenie mobilne itp.) One działają - w jaki sposób różne podsystemy rozwiązania współdziałają ze sobą i systemami zewnętrznymi itp.

Sugeruję zdobycie doświadczenia w aplikacjach komputerowych i korporacyjnych, takich jak aplikacje internetowe - mogą być wykonane równie źle dla początkującego, jak i dla eksperta. Będąc w stanie powiedzieć potencjalnemu pracodawcy, że masz większe doświadczenie niż 90% tłumu „popularyzatorskich” twórców stron internetowych zawsze pomaga!

heretik
źródło
2
+1 Polecam również dużą ekspozycję na programowanie systemów. Nie musisz być w stanie napisać jądra, ale musisz zrozumieć, jak on działa. Natknąłem się na wielu programistów internetowych, którzy dosłownie nie rozumieją, w jaki sposób system operacyjny faktycznie zarządza pamięcią i operacjami we / wy.
Tim Post
1
Zrobiłem programowanie systemów, ale nie bardzo szczegółowo. Tutaj pracodawcy nie potrzebują tej wiedzy i chcą wiedzieć tylko, czy jesteś wystarczająco biegły w językach programowania, do których muszą cię zatrudnić.
Bat_Programmer
1
Dokładnie! Inżynieria oprogramowania obejmuje znacznie więcej niż tylko tworzenie komputerów stacjonarnych. To cały SDLC!
LeWoody,
@Tim Post - Naprawdę się nie zgadzam .. chociaż ekspozycja zawsze pomaga, nie trzeba być dobrym programistą. Taki jest cel tworzenia warstw abstrakcji. W końcu lepiej wiedzieć coś bardzo szczegółowo niż dużo powierzchownie.
Roopesh Shenoy,
27

Przestańcie rozdzielać te dwa - tworzenie stron internetowych jest podzbiorem inżynierii oprogramowania, podobnie jak specjalizacja. I nie ma nic złego w posiadaniu specjalizacji.

Czy stosujesz dobre praktyki inżynierii oprogramowania, takie jak kontrola wersji, pisanie specyfikacji, refaktoryzacja kodu, pisanie testów jednostkowych tam, gdzie to konieczne, posiadanie formalnej fazy testowej z odpowiednimi testerami itp.? Jeśli tak, to gratulacje, jesteś już inżynierem oprogramowania. Jeśli nie, to są to rzeczy, które możesz zastosować nawet przy tworzeniu stron internetowych i stać się znacznie bardziej produktywnym / profesjonalnym jako programista.

Roopesh Shenoy
źródło
1
W 100% się z tobą zgadzam, ale niestety nie wszyscy się zgadzają.
Sobiaholic
4

Osoby, które twierdzą, że należy znać mechanikę bazowego systemu operacyjnego i że można robić zarówno komputer, jak i Internet, są najprawdopodobniej programistami komputerów stacjonarnych.

W rzeczywistości musisz się specjalizować. Znajomość css, kilkunastu bibliotek javascript, html, garści języków i struktur serwerowych, a także baz danych może zająć naprawdę dużo czasu.

Myślę, że powodem, dla którego tak wielu programistów mówi, jest to, że tak naprawdę nie rozumieją, jak zbudować dobrą aplikację internetową i jak różni się ona od świata komputerów stacjonarnych.

zhenka
źródło
2
Zgoda. Posiadanie zróżnicowanego zestawu umiejętności pomoże ci znaleźć pracę, ale bycie prawdziwym specjalistycznym ekspertem pomoże ci uzyskać większą wypłatę. Niezależnie od tego, czy jest to aplikacja, czy aplikacja internetowa, stanie się prawdziwym ekspertem na wyższym poziomie. Bycie ekspertem w jednym nie czyni z ciebie eksperta w drugim.
StronglyTyped
3

Zakładam, że masz na myśli programistę aplikacji i programistę WWW. Dlaczego nie zrobić obu? Na przykład pracuję zarówno po stronie internetowej, jak i po stronie aplikacji dla firmy zajmującej się programowaniem iPadów. Robię takie rzeczy, jak synchronizacja, IAP itp. W dużej firmie utkniesz na swoim stanowisku, ale jeśli podejmiesz pracę w małej firmie, zaoferuj naukę PHP i od czasu do czasu pomagaj w witrynie. Zobacz, co wolisz! Nikt nie może na to odpowiedzieć :)

Jeśli chodzi o zakres i przyszłość, żadna z nich wkrótce się nie pojawi. Tworzenie stron internetowych będzie nadal rosło w bardziej płynne, wypełnione stanem środowisko, al la HTML 5, a aplikacje będą nadal rosły w sposób bardziej niezawodny i wypełniły więcej nisz. Pytanie brzmi: gdzie byłbyś szczęśliwy?

Zlewka
źródło
Istnieją już programiści mobilni, którzy opracowują kod do telefonów komórkowych i wielu innych urządzeń przenośnych. Zgadzam się z Ginaminem. Twój główny obszar rozwoju może być jednym z nich, ale zachowaj opcje otwarte.
PradeepGB
Chciałbym to zrobić, ale większość firm ma tutaj osobne działy i osobne zadania dla programistów aplikacji i web developerów. Dlatego musimy dokonać wyboru między tymi dwoma.
Bat_Programmer
2

Cóż, osobiście powiedziałbym, że powinieneś iść do sieci. Opracowywanie owoców, które pozwolą ci wejść do nowego świata innowacji, a twoje innowacyjne pomysły dotrą do stron na całym świecie.

Dzięki szerokiemu włączeniu Javascript, Ajax, Flash, ActionScript i wielu innych opcji, możesz stworzyć naprawdę ściśle określone standardowe witryny.

Ashim Halder Web Developer Ind
źródło
0

Myślę, że stabilny długoterminowy rozwój kariery może specjalizować się w niestandardowych wewnętrznych aplikacjach korporacyjnych dla Internetu w języku C # i Javie.

Nie moja ulubiona filiżanka kawy, ale myślę, że będzie to świetna płatna praca.

Paul Nathan
źródło
dobrze znam się na Javie, ale w okolicy, w której mieszkam, nie ma wiele przyszłości. Wymagają ASP.Net i PHP dla sieci.
Bat_Programmer
@Deepesh: Następnie uczysz się ASP.NET/PHP, a następnie zastanawiasz się, gdzie będzie za 5 lat. Weź również pod uwagę inne stosy technologii. Jeśli tego szukasz, możesz pracować w kierunku zarządzania, gdzie możesz określić, jakie technologie zostaną zastosowane w Twojej firmie.
Paul Nathan
0

Wyobrażam sobie, że powinieneś skanować ogłoszenia o pracę przez kilka tygodni i sprawdzać, co się dzieje regularnie. Uważam, że największymi językami są C # i Java. Mój obszar geograficzny ma silną kulturę rozwoju mobilnego z powodu RIM, więc jest to również silny element, który uważam. Co więcej, nie przepadam za projektowaniem grafiki, natomiast uwielbiam CSS, JavaScript i różne biblioteki, PHP i ASP.

Nie wspominasz zbyt wiele o swojej obecnej wiedzy i pochodzeniu. Zbuduj dobrze zaokrąglony fundament, znajdź projekt i zacznij kodować. Przydatne jest posiadanie doświadczenia w programowaniu i ogólnej znajomości programowania bez względu na specyfikę języka.

ericawebdev
źródło
Większość miejsc pracy w moim obszarze to php, css, html, javascript, asp.net i coldfusion w dziedzinie tworzenia stron internetowych. A dla programistów aplikacji są to głównie c # i vb.net. Znam wszystkie te języki, ale tworzenie stron internetowych wydaje mi się bardziej atrakcyjne.
Bat_Programmer
2
Wciąż jest praca w coldfusion?
q303
0

Osobiście uważam, że granica między nimi zaciera się z czasem, jeśli jeszcze tego nie zrobiła. Weźmy na przykład zintegrowany czas wykonywania Adobe, który pozwala aplikacjom internetowym na działanie poza przeglądarką, jako przykład, w którym umiejętności internetowe niektórych programistów można teraz wykorzystać do tworzenia aplikacji komputerowych. Ignoruje to kilka innych dziedzin rozwoju, takich jak aplikacje mobilne i systemy wbudowane.

JB King
źródło
Dzięki za pomysł na ten temat. Uważam, że League of Legends został opracowany przy użyciu Adobe AIR i jest popularny dzięki swoim wielkim sukcesom.
Bat_Programmer
0

Jeśli naprawdę podoba ci się tworzenie stron internetowych, skorzystaj z tego, ale jak ktoś już powiedział, będziesz również wiedział coś o programowaniu na pulpicie, ponieważ konstrukcja interfejsu i wzorce są prawie takie same.

Coyote21
źródło
0

penispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenis


źródło