Comment développer des applications pour iOS en tant que profession


Merci pour l'a2a.

Vous n'avez pas réellement besoin de 2-3 ans d'expérience pour obtenir le poste. Il n'y a pratiquement aucune équipe d'ingénierie où que ce soit qui s'en tiendra religieusement aux exigences de la description de poste si la bonne personne se présente.


Ce que vous devez vous demander, c'est pourquoi ils demandent 2-3 ans d'expérience, ce qu'ils veulent vraiment et comment vous pouvez le leur donner?

Pourquoi ils demandent


Ils demandent les 2-3 ans d'expérience principalement pour que vous ne leur fassiez pas perdre leur temps. Ils ont besoin de certains mécanismes de blocage dans le processus de candidature pour s'assurer qu'ils ne perdent pas tout leur temps à interviewer de mauvais candidats.

C'est'leur façon de dire "Ce n'est pas un rôle senior, mais ce n'est pas non plus un stage. Nous nous attendons à ce que vous sachiez ce que vous'faites et nous nous attendons à ce que vous fassiez preuve d'un minimum de professionnalisme."

Que veulent-ils vraiment

Ils veulent quelqu'un qui peut venir à la vitesse pour prendre des tâches de développement de base sur leurs plaques dans les 2 premières semaines, et quelqu'un qui évoluera pour être un membre solide de l'équipe dans les 3 mois. Ils espèrent probablement que dans un an, vous serez quelqu'un qui peut conduire des fonctionnalités ou des projets majeurs par vous-même.

Ils veulent quelqu'un de fiable. Ils veulent une certaine quantité de preuves sociales et historiques que les autres personnes ne vous détestent pas et que vous n'êtes pas une douleur dans le cul pour travailler avec.

Ils veulent quelqu'un qui est professionnel et qui sait comment travailler avec leurs outils et leurs processus plutôt que d'être une prima donna qui sait toujours une meilleure façon de tout faire.

Comment pouvez-vous le leur donner ?

Prêtez attention à cette première chose, parce que les autres choses n'auront pas d'importance si vous ne faites pas cette première chose. Ok, prêt ?

Construisez une application et publiez-la dans l'app store. De préférence, publiez plusieurs apps. Elles n'ont pas besoin d'être super populaires, puis n'ont pas besoin de faire une tonne d'argent, et elles n'ont même pas besoin d'être belles. Ce dont ils ont besoin, c'est de

  1. fonctionner correctement. Quelques bogues ici et là peuvent être compréhensibles, mais vous ne devriez pas vous en préoccuper à moins d'être raisonnablement sûr qu'il fonctionne bien
  2. être propre. Il n'a pas besoin d'être magnifiquement conçu, mais il doit suivre les lignes directrices de l'IHM, et le design qu'il y a doit être cohérent dans toute l'application. Prenez le temps de le faire correctement.
  3. Montrez que vous avez utilisé plusieurs frameworks/bibliothèques pour faire des choses intéressantes. Lorsque votre app fait des choses avec l'animation, le dessin, le réseau, l'AV, le stockage de données, etc. cela montre que vous apprenez une variété de frameworks et que vous n'êtes pas nécessairement un poney à un seul coup. (si vous construisez plusieurs apps, c'est plus facile)
  4. Soyez quelque chose que vous êtes légitimement fier de montrer aux gens.

Ok, maintenant vous avez une application dans l'app store, et vous'avez inclus des liens vers eux dans votre CV. Donc maintenant, les gens sont raisonnablement sûrs que vous avez une certaine idée de ce que vous faites et que vous n'êtes pas un noob complet. Que devez-vous faire d'autre ?

  • Si vous'êtes courageux, mettez le code de votre application sur un dépôt public sur GitHub afin que tous les intervieweurs et examinateurs potentiels puissent regarder votre code. Ne le faites pas si vous n'avez pas confiance en votre style de codage et si vous n'avez pas pris le temps de commenter et de structurer le code de manière approfondie. Cela peut montrer que vous savez comment écrire un bon code, et que vous'n'avez pas peur de vous ouvrir à la critique.
  • Participez à un ou plusieurs projets open-source de bibliothèques mobiles. Vous pouvez mentionner que vous êtes un contributeur sur ces projets dans votre CV. Cela contribuera à montrer que vous pouvez travailler avec d'autres personnes et participer à un effort d'équipe qui ne tourne pas autour de vous.
  • Apprendre de nouveaux frameworks et outils. Avez-vous utilisé Flurry sur votre dernier projet ? Utilisez MixPanel sur celui-ci. Avez-vous utilisé AFNetworking avant ? Essayez un simple réseau brut cette fois-ci. Utilisez-vous habituellement GitHub ? Essayez SVN pour un projet. Apprenez à travailler avec différents outils et technologies. Cela contribuera à compléter votre ensemble de compétences imprimées, vous aidera à parler intelligemment des outils que vous choisissez d'utiliser, et montrera que vous n'êtes pas figé au point de refuser d'autres façons de faire.

Une fois que vous avez plusieurs applications qui ne craignent pas dans l'app store, un code disponible pour que tout le monde puisse le voir et le commenter, que vous participez à au moins un projet open-source, et que vous avez appris une variété d'outils et de bibliothèques, il n'importera pas à une équipe de développement de savoir si vous avez réellement deux ans d'expérience. Ils'vont vouloir vous interviewer.

>