Nella mia esperienza personale, Google non ha designazioni di ruolo rigide, come "Tu sei un ingegnere di software embedded; lavorerai sul software embedded. Bob è un ingegnere di machine learning; Bob lavorerà sul software di machine learning".
L'idea dell'assegnazione di ruoli specifici e rigidi è abbastanza antiquata, in quanto è fortemente derivata dal complesso militare industriale degli anni '50 e '60 e dai ruoli ingegneristici associati, nella speranza che tutti possano essere ridotti ai loro ruoli, e quindi essere ingranaggi sostituibili. Non si può cancellare il programma Apollo semplicemente perché qualcuno viene investito da un autobus.
La realtà attuale è che gli ingegneri hanno cose che sono capaci di fare, cose che sono capaci di imparare a fare, cose che sono bravi a fare e cose che gli piace fare.
Le cose che qualcuno ama fare e le cose che è bravo a fare non sono sempre insiemi che si intersecano. Se non c'è intersezione, la persona probabilmente non dovrebbe lavorare come ingegnere, poiché non sarà felice nella vita.
Se vuoi essere un ingegnere embedded a Google, dovresti qualificarti per essere un ingegnere a Google, e poi quando arriva un progetto che richiede lavoro embedded, offriti volontario per lavorarci. O meglio ancora, se hai del tempo libero... inizia a lavorarci, e se il tuo lavoro è apprezzato, il team che possiede il progetto probabilmente ti vorrà lì a tempo pieno.