Come sviluppare app per iOS come professione

Grazie per l'a2a.

In realtà non hai bisogno di 2-3 anni di esperienza per ottenere il lavoro. Non c'è quasi nessun team di ingegneri da nessuna parte che si atterrà religiosamente ai requisiti della descrizione del lavoro se arriva la persona giusta.

Quello che devi chiederti è perché stanno chiedendo 2-3 anni di esperienza, cosa vogliono veramente, e come puoi darglielo?

Perché lo stanno chiedendo

Chiedono i 2-3 anni di esperienza principalmente in modo che tu non perda il loro tempo. Hanno bisogno di alcuni meccanismi di controllo nel processo di candidatura per assicurarsi di non sprecare tutto il loro tempo intervistando cattivi candidati.

È il loro modo di dire "Questo non è un ruolo senior, ma non è nemmeno uno stage. Ci aspettiamo che tu sappia cosa stai facendo e che mostri un minimo di professionalità."

Cosa vogliono veramente

Vogliono qualcuno che possa arrivare a velocità tale da togliere compiti di sviluppo di base dai loro piatti entro le prime 2 settimane, e qualcuno che possa diventare un solido membro del team entro 3 mesi. Probabilmente sperano che entro un anno sarete qualcuno in grado di guidare da solo le funzionalità o i progetti più importanti.

Vogliono qualcuno che sia affidabile. Vogliono una certa quantità di prove sociali e storiche che le altre persone non ti odiano, e che non sei un rompipalle con cui lavorare.

Vogliono qualcuno che sia professionale e che sappia lavorare con i loro strumenti e processi piuttosto che essere una primadonna che conosce sempre un modo migliore per fare tutto.

Come puoi darglielo?

P presta attenzione a questa prima cosa, perché le altre cose non avranno importanza se non fai questa prima cosa. Ok, pronto?

Costruisci un'app e pubblicala nell'app store. Preferibilmente pubblica più app. Non devono essere super popolari, non devono fare un sacco di soldi, e non devono nemmeno essere belle. Quello di cui hanno bisogno è di

  1. funzionare correttamente. Qualche bug qua e là può essere comprensibile, ma non dovreste preoccuparvi a meno che non siate ragionevolmente sicuri che funzioni bene
  2. Essere puliti. Non c'è bisogno di un bel design, ma è necessario che segua le linee guida dell'HCI, e il design che c'è deve essere coerente in tutta l'app. Prenditi il tempo per farlo bene.
  3. Mostra che hai usato più framework/librerie per fare cose interessanti. Quando la vostra app fa cose con l'animazione, il disegno, il networking, l'AV, l'immagazzinamento dati, ecc. dimostra che state imparando una varietà di frameworks e non siete necessariamente un cavallo di razza. (se costruisci più app questo è più facile)
  4. Essere qualcosa che sei legittimamente orgoglioso di mostrare alla gente.

Ok, ora hai un'app nell'app store, e hai incluso i link ad essa nel tuo curriculum. Così ora le persone sono ragionevolmente sicure che hai qualche idea di quello che stai facendo e che non sei un completo noob. Cos'altro dovreste fare?

  • Se vi sentite coraggiosi, mettete il codice della vostra app su un repository pubblico su GitHub in modo che ogni potenziale intervistatore e selezionatore possa guardare il vostro codice. Non fatelo a meno che non siate abbastanza sicuri del vostro stile di codifica e abbiate preso tempo per commentare e strutturare il codice accuratamente. Questo può mostrare che sai come scrivere buon codice, e che non hai paura di aprirti alle critiche.
  • Partecipa a uno o più progetti open-source per librerie mobili. Puoi menzionare che sei un collaboratore in questi progetti nel tuo curriculum. Aiuterà a dimostrare che puoi fare del lavoro con altre persone e che puoi partecipare a uno sforzo di squadra che non riguarda solo te.
  • Impara nuovi framework e strumenti. Hai usato Flurry nel tuo ultimo progetto? Usa MixPanel su questo. Hai usato AFNetworking prima? Prova un po' di semplice networking grezzo questa volta. Di solito usi GitHub? Prova SVN per un progetto. Insegnate a voi stessi ad essere in grado di lavorare con diversi strumenti e tecnologie. Questo aiuterà a completare il vostro set di abilità stampate, vi aiuterà a parlare in modo intelligente degli strumenti che scegliete di utilizzare, e mostrerà che non siete così fissati nelle vostre abitudini da storcere il naso di fronte ad altri modi di fare le cose.

Una volta che avete più applicazioni che non fanno schifo nell'app store, codice disponibile per tutti da vedere e commentare, state partecipando ad almeno un progetto open-source, e avete imparato una varietà di strumenti e librerie, non importa a nessun team di sviluppo se avete effettivamente due anni di esperienza. Vorranno intervistarvi.