Quali sono le diverse possibili aree di interesse per un ingegnere di sviluppo software (iOS, Android, web, ecc.)?

Off the top of my head

  • SviluppatoreOS - un sacco di opportunità qui, una volta era una scelta chiara tra desktop, mobile e sistemi embedded, ora le linee sono diventate più confuse (ad esempio, è possibile eseguire Android sia su un telefono che su un tablet). Scriverai moduli del kernel, driver di dispositivi, roba di basso livello.
  • Sviluppatore web - front-end (JS, CSS, HTML) o back-end (sistemi CMS, servizi web - client, server, database), una vasta gamma di cose che potresti fare come sviluppatore web.
  • Sviluppatore di giochi - tutti i tipi di cose dai sistemi video, particelle, rendering, audio, gameplay, UI
  • Sviluppatore mobile - puoi specializzarti nella costruzione di alcuni tipi di applicazioni come Android, iOS, WP
  • Sviluppatore di robotica - potresti costruire il prossimo Roomba. Dovete capire alcuni concetti di fisica perché avete a che fare con l'hardware e il mondo reale (ad esempio le ruote non girano abbastanza, potrebbe essere troppo l'attrito del tappeto). O anche le auto a guida autonoma, penso che vadano in questa categoria.
  • Data scientist - questa è un po' una specializzazione SDE, include un sacco di conoscenze su apprendimento automatico, AI, statistiche e matematica.
  • Visione del computer - analisi delle immagini, etichettatura, imaging medico
  • Sistemi distribuiti - networking, routing, threading, concorrenza
  • Interazione uomo-macchina - questo può essere una serie di cose ma soprattutto VUI (interfaccia utente vocale) e NUI (interfaccia utente naturale) - come essere in grado di dire Xbox ON e controllare un gioco con Kinect, Wii.