Il visto H-1B: il viaggio di uno sviluppatore iOS dall'Honduras alla Silicon Valley

Pubblicato: 2022-03-11

In questi giorni vivo nella grande città di San Francisco. Ho un lavoro di sviluppo iOS che amo e che sogno da molto tempo. Adesso sembra tutto facile, ma non è sempre stato così.

Come tutto è cominciato

Sono nato a San Pedro Sula, una piccola città nell'angolo nord-ovest dell'Honduras. Ho iniziato a programmare quando avevo 12 anni. Tutto è iniziato con BASIC. Un giorno stavo giocando a un videogioco e si è bloccato. Quando ho visto uno schermo pieno di codici di errore e messaggi, mi sono incuriosito, quindi ho iniziato a imparare alcuni comandi BASIC, che alla fine hanno portato all'acquisto di alcuni libri di programmazione su Clipper, Turbo Pascal, C, C++, ecc. È stato fantastico. Avevo tutto il tempo del mondo da dedicare alla programmazione di tutto ciò che volevo: nessun vincolo di tempo (a parte la scuola, che non era così impegnativa come un lavoro a tempo pieno) o responsabilità da adulto.

Quello che era iniziato come armeggiare con i videogiochi si è trasformato in uno sviluppo iOS freelance, portandomi al mio lavoro di sponsorizzazione H-1B.

Diversi anni dopo, all'età di 15 anni, mio ​​padre aveva problemi con un software di contabilità scadente. Gli ho detto che avrei potuto fare una versione migliore, senza capire davvero in cosa mi stavo davvero cacciando (non avevo mai nemmeno aperto un database SQL). Così ho comprato altri libri e mi sono messo al lavoro. (Nota: questo era il momento in cui Internet non era così diffuso come lo è oggi: vivevo in un paese del terzo mondo e Internet è arrivato solo verso la fine del 1997, 5 anni dopo aver iniziato a programmare.)

Sogni e ambizioni di vivere negli Stati Uniti

Ricordo di essermi detto: “Voglio fare l'ingegnere informatico”. Ovviamente, non avevo idea di cosa potesse racchiudere esattamente, ma sapevo che mi piacevano i computer (sto parlando di quei vecchi monitor quadrati, verdi, PC lenti con DOS - orribili, ovviamente, ora che abbiamo tutti questi luccicanti nuovi sistemi operativi.)

Quindi, da ventenne ingenuo, ho deciso che volevo immigrare negli Stati Uniti, ovviamente, è una strada lunga e rocciosa.

Ricordo molto chiaramente che durante il mio secondo o terzo viaggio negli Stati Uniti (venivamo per le vacanze), ho deciso che volevo vivere lì. Era tutto così avanzato! Naturalmente, oggi, con la globalizzazione e Internet, le differenze non sono così vaste, ma le lacune nella crescita e nel progresso possono ancora essere viste attraverso lo sviluppo delle infrastrutture, l'instabilità politica, i tassi di criminalità, ecc.

All'epoca non sapevo che il biglietto per vivere negli Stati Uniti fosse uno sponsor H-1B.

Quindi, da ventenne ingenuo, ho deciso che volevo immigrare negli Stati Uniti, ovviamente, è una strada lunga e rocciosa.

A quel tempo, mio ​​padre gestiva una società di contabilità e avevano iniziato a riscontrare problemi con il loro software di contabilità. Lo sviluppatore era testardo e riluttante a dare una mano, quindi mio padre iniziò a cercare alternative. Voleva mettermi al passo come programmatore, quindi è andato all'università locale, l'unico posto dove vendevano libri di programmazione avanzata, e ha fatto il pieno di risorse. Era un nuovo mondo per me: avevo uno di quei nuovi (all'epoca) PC monitor verdi con un processore da 5 MHz, 256 kb di memoria e 10 MB di spazio su disco rigido. Utilizzava quei vecchi dischi meccanici, quindi potevi sentire tutto ciò che il disco rigido stava elaborando. La tastiera era meccanica e il suono di ogni battitura era piacevole da ascoltare. Avanti veloce di 10 anni e sto ancora lavorando allo stesso software di contabilità; ora, invece, lo vendevo ai clienti, con un'interfaccia Windows, un database SQL e connettività Internet.

Andando in rovina

A quel tempo, ho deciso di abbandonare la scuola e di avviare la mia azienda. Ho lavorato con mio padre, in un certo senso: abbiamo diviso i guadagni sul guadagno del software di contabilità (sebbene fosse una mia idea ed esecuzione, lui ha investito molto tempo nell'insegnarmi la contabilità). Quindi ci siamo separati: lui ha continuato a vendere la versione attuale del software e io sono andato a crearne una nuova. Ma come scoprirei a breve, l'attività di sviluppo software in Honduras non è una passeggiata: i clienti non vogliono pagare per i tuoi servizi e vedono sempre lo sviluppo software come un compito relativamente facile dato che non richiede lavorare con un prodotto tangibile; spesso non percepiscono il valore del software in quanto non crea entrate immediate, rendendo ancora più difficile la vendita.

Per quanto riguarda gli affari, avevo assunto alcuni dei migliori studenti universitari in circolazione (che ho trovato tornando io stesso al college). Ma nel tempo ho iniziato a indossare troppi cappelli: CEO, contabile, HR Rep, Customer Service & Support, Project Manager e (il mio preferito) Developer. Volevo davvero solo programmare, ma è diventato troppo difficile poiché tutti questi cappelli mi logoravano. Alla fine, abbiamo avuto problemi perché i nostri clienti non pagavano in tempo e abbiamo faticato a trovare nuovi progetti: quando hai i migliori talenti in giro, loro vogliono essere pagati bene e noi stavamo pagando bene; ma i nostri clienti non hanno risposto come ci aspettavamo. Inoltre, vivere in un paese del terzo mondo aveva scoraggiato l'interesse degli investitori. Avrei dovuto prevederlo e perseguire un altro modello di business, ma ero troppo occupato a destreggiarmi tra tutti i miei ruoli. Alla fine, l'azienda è fallita e sono rimasto con un sacco di debiti, dipendenti arrabbiati e l'amaro in bocca. Ho dovuto ricominciare dal punto di partenza.

L'iPhone SDK mi ha reso uno sviluppatore iOS freelance

Visto h-1b per uno sviluppatore iOS freelance

150.000 download di app a pagamento in seguito, mi è stato dimostrato che avevo ragione.

Ciò che conta di più è come ci rialziamo di fronte alla sconfitta e come impariamo dai nostri errori. È scoraggiante ricominciare, ripensare a tutto, ma è quello che dovevo fare. Mia moglie mi ha aiutato in questi tempi difficili e mi ha spinto a fare cose di cui pensavo di non essere capace. Così ho ricominciato a lavorare sul mio software di contabilità, ma senza soldi per il marketing era troppo difficile promuoverlo. Il reddito era scarso e avevo bisogno di mantenere la mia famiglia. Ho dovuto cambiare marcia. Più o meno nello stesso periodo, Apple ha introdotto l'iPhone SDK. Mi sembrava una nuova piattaforma rischiosa; inoltre, ero nuovo del Mac stesso. (Il mio passaggio al Mac è iniziato con l'iPhone e un Hackintosh, che mi ha permesso di assaporare OS X senza sborsare su una macchina costosa.) Alcuni dei miei amici hanno riso e mi hanno completamente ignorato quando ho detto che avrei sviluppato app iOS per il i phone; ma credevo davvero che ci fossero soldi da fare nell'App Store. 150.000 download di app a pagamento in seguito, mi è stato dimostrato che avevo ragione; anche se, ovviamente, queste cifre da sole non raccontano l'intera storia: l'economia dell'App Store è complessa e devi davvero investire nel tuo prodotto e trovare clienti per creare valore a lungo termine. Per questo serve una squadra. Quindi, anche se la mia app stava andando bene, non era sostenibile (dal punto di vista aziendale) continuare a svilupparsi da sola. Indipendentemente da ciò, avevo dimostrato quello che potevo fare, così un giorno mi sono svegliato e mi sono detto che sarei finalmente immigrato negli Stati Uniti.

Come ho scoperto, immigrare negli Stati Uniti non è stato un compito facile. Probabilmente la strada più semplice è ottenere una Green Card tramite un familiare, ma la mia opzione più vicina è stata mio fratello, che è nato negli Stati Uniti; tuttavia, viveva con noi in Honduras e non poteva presentare una petizione per nessuno poiché in quel momento non lavorava. E anche se potesse, il processo richiederebbe fino a 15 anni (Nota: i rapporti tra fratelli hanno meno preferenza per la sponsorizzazione della Green Card da parte dei membri della famiglia). La mia soluzione era creare un'azienda statunitense come sviluppatore iOS. Ho trovato un amico da investire e abbiamo iniziato a creare giochi per iPhone e iPad. Sulla carta, tutto sembrava fantastico; ma ovviamente, l'economia dell'App Store ci dimostrerebbe che ci sbagliamo. Presto avevamo bisogno di più soldi; il mio amico non lo aveva previsto. Alla fine, abbiamo pubblicato un'app iOS (un'altra era in fase di sviluppo, ma non è mai stata finalizzata a causa di problemi di finanziamento). Ancora una volta, le cose sembravano cupe. Ho deciso di perseguire quella che pensavo fosse la mia ultima risorsa: lavorare a tempo pieno o come freelance per un'azienda statunitense e sperare che il lavoro H-1B sarebbe seguito.

Essere assunto

È difficile farsi assumere da una società americana dall'estero. Ho fatto domanda per diverse posizioni, ma il loro primo problema è stato che avevo bisogno di un trasferimento internazionale: avrebbero dovuto presentare una petizione e sponsorizzarmi attraverso un visto di lavoro. Il processo è stato costoso in termini di tempo (fino a un anno, se al momento non è disponibile alcun visto) e denaro (ad es. spese legali). Così, invece, ho iniziato a cercare lavoro attraverso un sito di freelance per lo sviluppo di iOS online. In teoria, è un buon servizio. Ma prima devi iniziare a creare fiducia, il che è difficile. Ci sono anche orde di sviluppatori che fanno pagare meno della media solo per farsi notare; per questo motivo è difficile essere pagati bene. Alla fine ho realizzato un solo progetto attraverso il sito, del valore di 8 ore di lavoro.

Più tardi, sono stato contattato da Toptal con quella che sembrava un'ottima opportunità: assumono grandi sviluppatori freelance e li mettono in contatto con i clienti. Inoltre, potrei lavorare da casa e per un'azienda statunitense. Ero apparso sul loro radar attraverso il mio lavoro nell'App Store, ma dovevo comunque superare un rigoroso processo di verifica, facendo di tutto, dalla comprensione della lettura alle curiosità di programmazione, dalle ottimizzazioni degli algoritmi alle sessioni di codifica a tempo. La cosa più memorabile è stata la mia intervista finale, che includeva la discussione di uno dei miei progetti di sviluppo iOS e la guida di un ingegnere di Toptal attraverso parte del mio codice per dimostrare che era davvero mio.

Ora ero nel mezzo della rete di sviluppatori freelance di Toptal iOS.

Dopo che Toptal mi ha accettato nella loro rete di sviluppatori, sono stato messo in lista d'attesa. Una volta che un cliente mostra interesse per un particolare sviluppatore, il cliente intervisterà quel candidato (come con qualsiasi normale colloquio di lavoro) per assicurarsi che sia adatto. Prima del mio primo colloquio, ero piuttosto nervoso. È iniziato con il cliente che spiegava cosa ci si aspettava da me, così come il progetto generale, e poneva continuamente domande per vedere se avevo capito tutto. Con il progredire dell'intervista, le cose non stavano andando come speravo, poiché le domande sono diventate più specifiche e tecniche. Alla fine sono andati con qualcun altro. Con il senno di poi, è stato fantastico che non mi volessero: una settimana dopo, ho intervistato quello che sarebbe poi diventato il mio sponsor e datore di lavoro H-1B a tempo pieno.

Mi sono preparato di più per la prossima intervista, che è andata bene come avrei potuto sperare: abbiamo parlato di più della mia esperienza come sviluppatore e l'azienda ha preso confidenza con il mio approccio alla risoluzione dei problemi. Tre giorni dopo, ho firmato un contratto e ho iniziato a lavorare per questo nuovo cliente tramite Toptal.

Ho lavorato per Life360 come freelance tramite Toptal per almeno 9 mesi. Il loro prodotto di punta è un'app mobile per la localizzazione di famiglie, ma inizialmente stavo lavorando da solo su un paio di progetti collaterali: primo, un'app di allerta terremoto; e in secondo luogo, uno scanner della polizia. Per alcuni mesi, il mio flusso di lavoro consisteva principalmente in: ricevere requisiti di alto livello da Life360, inviare modelli e domande e integrare il loro feedback in queste app, ripetendo questo ciclo un paio di volte. Ero in contatto con un designer e un paio di dipendenti Life360 (l'azienda ne aveva solo cinque o sei all'epoca), ma avevo molta autonomia. È stato liberatorio lavorare da casa: non dovevo fare il pendolare e avevo creato un ambiente privo di distrazioni che mi ha reso un ottimo dipendente remoto.

Presto mi sono trovato integrato sempre più profondamente nel team: avevo dimostrato il mio valore, per così dire, con questi due progetti iOS freelance iniziali. A dicembre, mi è stato chiesto se mi sarebbe piaciuto entrare a far parte del team a tempo pieno a San Francisco: ho acconsentito con entusiasmo e hanno iniziato le scartoffie. A gennaio partecipavo alle riunioni giornaliere di Scrum (praticamente, dato che ero ancora in Honduras), descrivendo il mio lavoro del giorno precedente e le mie cose da fare per il prossimo. Il mio flusso di lavoro è diventato più organizzato e sono diventato più coinvolto con l'azienda.

Trasferimento con visto H-1B

Era un sogno diventato realtà: avevo svolto un ottimo lavoro per un'azienda statunitense e ora stavo per trasferirmi, ma avevo ancora diversi ostacoli da superare. In primo luogo, non avevo mai finito la mia laurea. Sebbene non sia strettamente necessario per lavorare in un'azienda tecnologica in questi giorni, è davvero necessaria una laurea per qualificarsi per un visto H-1B. Quindi ho dovuto finire la mia laurea; questo ha richiesto un impegno di sei mesi per un progetto su larga scala, che ho avuto appena il tempo di completare.

Sebbene non sia strettamente necessario per lavorare in un'azienda tecnologica in questi giorni, è davvero necessaria una laurea per qualificarsi per un visto H-1B.

L'avvocato ha depositato le pratiche il 1 aprile, giorno in cui si apre la procedura per il visto H-1B (al momento della presentazione, ha lasciato il diploma come 'in sospeso', poiché i visti H-1B sono limitati e potrebbero inviare la documentazione in un secondo momento ). Ho finito il mio progetto in tempo, ho partecipato alla cerimonia di laurea e ho ricevuto un diploma.

Da quel momento in poi, soprattutto, la società sponsor H-1B che ti assume deve essere molto aperta e molto paziente. Il processo di richiesta del visto inizia ad aprile; se opti per l'opzione di elaborazione premium, otterrai il risultato dall'USCIS in due settimane. Dopodiché, devi ancora passare attraverso un processo di colloquio, a quel punto ti può ancora essere negato un visto H-1B; ma se tutto va bene, puoi entrare negli Stati Uniti dopo il 1 ottobre, sei mesi dopo la data della domanda e non prima. Ciò significa che non puoi lavorare per quella società sponsor finché non ottieni effettivamente il visto H-1B, il che può essere un problema: l'azienda deve capire come continuare a lavorare da remoto mentre aspettano che il visto diventi attivo. Nel mio caso, la società ha deciso di assumermi come sviluppatore iOS freelance, ha fatturato le mie ore come servizi professionali e non ha violato alcuna legge sull'immigrazione e sul lavoro.

Sono volato a San Francisco il 1 ottobre 2012. L'obiettivo che avevo promosso fin da quando ho memoria era finalmente completo.