Sviluppatore Web o Software Engineer? [chiuso]


24

Una domanda che mi sono posto e che ho davvero confuso quale strada prendere.

Quindi ho bisogno del tuo aiuto per quanto riguarda i pro e i contro di queste 2 professioni nel mondo di oggi. Adoro lo sviluppo di applicazioni Web poiché il Web è la cosa migliore che accada in questa epoca e quasi tutti passano sul World Wide Web. E tendono anche a continuare a conoscere le nuove tecnologie e i servizi web.

D'altra parte mi piace l'ingegneria del software anche per le applicazioni desktop poiché ho avuto esperienza con lo sviluppo di software su piccola scala in VB.Net, Java, C ++, ecc.

Quale percorso ha più portata e un futuro migliore? Qual è la tua opinione?


3
Come sono esattamente queste due professioni? o_O
dr Hannibal Lecter,

2
Sto affrontando la stessa identica decisione ... ma lo sviluppo web continua a risucchiarmi perché è così facile ottenere contratti, anche senza guardare.
mpen

1
Non sapevo che ci fosse una differenza tra l'ingegnere del software e lo sviluppatore web. Le cose che impari. :)
Tony,

5
Penso che intendi "sviluppatore di software"
Ross,

Risposte:


25

A rigor di termini, l'ingegneria del software riguarda la progettazione corretta dei sistemi software - indipendentemente dalla piattaforma (web, desktop, mobile, ecc.) Su cui vivono - come i vari sottosistemi della soluzione interagiscono tra loro e i sistemi esterni, ecc.

Suggerirei di fare un po 'di esperienza con le applicazioni desktop e aziendali, come le applicazioni Web: possono essere fatte altrettanto male per i principianti e altrettanto per gli esperti. Essere in grado di dire a un potenziale datore di lavoro che hai un'esperienza più ampia rispetto al 90% della folla di sviluppatori web "popolari" aiuta sempre!


2
+1 Raccomando anche molta esposizione alla programmazione dei sistemi. Non devi essere in grado di scrivere un kernel, ma devi capire come si lavora. Mi imbatto in molti sviluppatori web che non hanno letteralmente alcuna comprensione di come il sistema operativo sottostante gestisce effettivamente la memoria e l'I / O.
Tim Post

1
Ho fatto la programmazione dei sistemi ma non molto nei dettagli. Qui i datori di lavoro non hanno bisogno di questa conoscenza e vogliono sapere solo se sei abbastanza abile nei linguaggi di programmazione per i quali devono assumerti.
Bat_Programmer,

1
Esattamente! L'ingegneria del software è molto più completa del semplice sviluppo del desktop. È l'intero SDLC!
LeWoody,

@Tim Post - Non sono davvero d'accordo .. mentre l'esposizione aiuta sempre, non è necessario essere un buon sviluppatore web. Questo è il punto centrale di avere strati di astrazione su cui lavorare. Dopotutto, è meglio sapere qualcosa nei minimi dettagli che sapere molto superficialmente.
Roopesh Shenoy,

27

Smetti di separare i due: lo sviluppo Web è un sottoinsieme dell'ingegneria del software, come una specializzazione. E non c'è niente di sbagliato nell'avere specializzazioni.

Usi buone pratiche di ingegneria del software come l'uso del controllo di versione, la scrittura di specifiche, il refactoring del codice, la scrittura di unit test dove necessario, una fase di test formale con tester adeguati, ecc.? Se sì, allora congratulazioni, sei già un ingegnere del software. In caso contrario, queste sono le cose che puoi applicare anche nello sviluppo web e diventare molto più produttivo / professionale come sviluppatore.


1
Sono d'accordo al 100% con te, ma sfortunatamente non tutti lo fanno.
Sobiaholic,

4

Le persone che affermano che si devono conoscere le meccaniche del sistema operativo sottostante e che si possono fare sia desktop che web sono molto probabilmente sviluppatori desktop.

In realtà devi specializzarti. Conoscere css, una dozzina di librerie javascript, html, una manciata di linguaggi e framework lato server e database può richiedere molto tempo.

Penso che il motivo per cui così tanti sviluppatori qui lo stiano dicendo è perché non capiscono davvero cosa ci vuole per costruire una buona applicazione web e quanto sia diversa dal mondo desktop.


2
Concordato. Avere un set di competenze diverse ti aiuterà a trovare un lavoro, ma essere un vero esperto specializzato ti aiuterà a ottenere una busta paga più grande. Che si tratti di app o sviluppatore web, ci vorranno anni per diventare un vero esperto di livello senior in uno dei due. Essere un esperto in uno non ti rende un esperto nell'altro.
StronglyTyped

3

Suppongo che intendi sviluppatore di applicazioni e sviluppatore web. Perché non fare entrambe le cose? Ad esempio, lavoro sia sul lato web che sul lato app per un'azienda di sviluppo per iPad. Faccio cose come sincronizzazione, IAP, ecc. In una grande azienda rimarrai praticamente bloccato nella tua posizione, ma se lavori in una piccola azienda, offri di imparare PHP e dare una mano di tanto in tanto sul sito. Vedi quale preferisci! Nessuno può rispondere per te :)

Per quanto riguarda l'ambito e il futuro, nessuno dei due andrà presto da nessuna parte. Lo sviluppo Web continuerà a crescere in un ambiente più fluido e pieno di stato, come HTML 5, e le applicazioni continueranno a diventare più solide e riempire più nicchie. La domanda è: dove saresti felice?


Esistono già sviluppatori mobili che stanno sviluppando codice per telefoni cellulari e molti altri dispositivi portatili. Sono d'accordo con Ginamin. La tua area di sviluppo principale può essere una di queste, ma tieni aperte le opzioni.
PradeepGB,

Mi piacerebbe fare entrambe le cose, ma la maggior parte delle aziende qui ha dipartimenti separati e lavori separati per lo sviluppatore di app e lo sviluppatore web. Quindi dobbiamo fare una scelta tra i due.
Bat_Programmer,

2

Bene, direi personalmente che dovresti andare per il Web Sviluppare frutta che ti permetta di raggiungere un nuovo mondo di innovazione e le tue idee innovative raggiungerebbero i siti in tutto il mondo.

Con l'ampia inclusione di Javascript, Ajax, Flash, ActionScript e molte altre opzioni, puoi facilmente creare siti standard veramente specificati.


0

Penso che un costante arco di carriera a lungo termine potrebbe essere specializzato in applicazioni interne aziendali personalizzate per il web in C # e Java.

Non la mia tazza di caffè preferita, ma penso che sarà un ottimo lavoro da pagare.


bene sono ben versato con Java, ma non c'è molto futuro di Java nell'area in cui sto vivendo. Richiedono ASP.Net e PHP per il web.
Bat_Programmer

@Deepesh: Quindi impari ASP.NET/PHP e poi consideri dove saranno le cose tra 5 anni. Considera anche altri stack tecnologici. Se lo cerchi, puoi lavorare per essere nella gestione, dove puoi determinare quale tecnologia verrà impiegata per la tua azienda.
Paul Nathan,

0

Immagino che dovresti scansionare gli annunci di lavoro per alcune settimane e vedere cosa succede regolarmente. Trovo qui le lingue più grandi sono C # e Java. La mia area geografica ha una forte cultura di sviluppo mobile grazie a RIM, quindi anche questo è un elemento forte che considero. Inoltre, non amo particolarmente la progettazione grafica, mentre adoro CSS, JavaScript e le varie librerie, PHP e ASP.

Non parli troppo delle tue conoscenze e conoscenze esistenti. Costruisci una base completa, trova un progetto e ottieni la codifica. Avere esperienza di programmazione e conoscenza generale della programmazione indipendentemente dalle specifiche della lingua è utile.


La maggior parte dei lavori nella mia zona coinvolge php, css, html, javascript, asp.net e coldfusion sul campo per lo sviluppo web. E per lo sviluppatore di applicazioni è principalmente c # e vb.net. Conosco tutte queste lingue ma lo sviluppo web mi sembra più allettante.
Bat_Programmer,

2
Ci sono ancora lavori nella fusione fredda?
q303

0

La mia opinione personale è che la linea di demarcazione tra queste si confonderà più nel tempo se non lo ha già fatto. Considera il runtime integrato di Adobe che consente alle applicazioni Internet di funzionare al di fuori del browser come esempio qui in cui le competenze web di alcuni sviluppatori possono ora essere utilizzate per creare applicazioni desktop. Ciò sta ignorando alcuni altri ambiti di sviluppo come le applicazioni mobili e i sistemi integrati.


Grazie per avermi dato un'idea su questo. Credo che League of Legends sia stato sviluppato utilizzando Adobe AIR ed è prevalente grazie al suo grande successo.
Bat_Programmer,

0

Se ti piace davvero lo sviluppo web, prova questo, ma come qualcuno ha già detto, saprai anche qualcosa sulla programmazione desktop, dal momento che il design e gli schemi dell'interfaccia sono quasi gli stessi.


0

penispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenispenis

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.