Quelle est l’attente hors de chaque niveau de génie logiciel chez Facebook?Artboard


Divulgation complète : Ancien ETP chez Facebook, Google et Microsoft.

Tous les exemples sont hypothétiques (ils avaient l'habitude d'effacer ma mémoire avant de me laisser partir).


Les niveaux s'ajoutent aux précédents, les attentes des niveaux inférieurs s'effaçant lentement. Par exemple, un directeur de l'ingénierie n'est pas censé savoir comment réparer le build d'une de ses équipes du haut de sa tête.

Gardez également à l'esprit que, en raison de l'évolution de la carrière et d'autres facteurs totalement indépendants, les gens ne travailleraient pas nécessairement à leur niveau tout le temps. Naturellement, ils essaieront d'accéder aux tâches légèrement supérieures à leur niveau pour se développer plus rapidement sur le plan des compétences et de la reconnaissance. Des exemples dans l'autre sens se produisent aussi.


Responsabilités et attentes :

  • E3
    Écrire du code et des tests, pousser vers la production sous une supervision de base.
    Savoir comment utiliser le contrôle de source, les outils de revue de code, comment exécuter le code localement.

    "J'ai ajouté ce bouton, et maintenant, avec cette dépendance que j'ai oubliée et que je viens d'ajouter, il est sur le site en direct !"

    (Les stagiaires s'inscrivent effectivement ici, avec moins ou pas d'accès à la production.)

  • E4
    Comprendre la conception et les applications de ce qui est développé.
    Comprendre les mécanismes de changement de production.
    Prendre des décisions de conception mineures sans supervision.
    Rédiger de la documentation (ne s'applique pas à Facebook, mais s'applique à Google, qui a le même nivellement).

    "J'ai remarqué que la façon dont notre fonctionnalité stocke les données sur les amis qui aiment notre gadget peut être améliorée et j'ai proposé un nouveau design. Voici un doc de conception qui a été approuvé la semaine dernière, voici le code pour façonner nos données actuelles dans la DB, voici le nouveau code de production, qui est rétrocompatible. Il est poussé ce soir, je vais être de garde au bureau. Croisons les doigts."

  • E5/M0
    Niveau supérieur pour un ingénieur, niveau d'entrée pour les managers.
    Comprend le domaine d'activité. Connaît les chiffres d'utilisation de base et leurs tendances.
    Peut formuler de nouveaux problèmes et les résoudre.
    Agit comme un architecte.
    Dirige l'équipe si nécessaire.

    Dans le rôle de manager : doit permettre à l'équipe de fonctionner en s'assurant que les ressources sont disponibles. Exécuter des 1:1-s et des examens de performance.

    Ingénieur : "Nous pouvons agréger ces données et introduire un autre onglet sur la page vue par les administrateurs de groupe. Pour les groupes de plus de 50 personnes, cela ne violerait pas la vie privée. En regardant le modèle d'utilisation de nos fonctionnalités actuelles, nos utilisateurs aimeraient la fonctionnalité proposée. J'ai effectué plusieurs tests de régression et confirme que nous pouvons la gérer avec XXX supplémentaire de quota et de permissions."

    Manager : "Ça a l'air génial ! Bougez vite et cassez des choses, je vais le clarifier avec notre équipe de confidentialité et vous obtenir un feu vert. Je m'occuperai aussi des ressources. Aussi, voulez-vous un stagiaire, peut-être pour la partie visualisation ?"

  • E6/M1
    Niveau staff/ingénieur principal.
    Plus d'autonomie et une plus grande portée par rapport à E5/M0.
    Il devrait être en mesure de diriger complètement son équipe comme si c'était une petite startup dans un plus grand écosystème.

    Ingénieur : "Nous avons souvent besoin de calculer certaines statistiques entre amis d'amis. Mon équipe dispose d'un pipeline pour cela. Les équipes A, B et C semblent faire les mêmes choses. J'ai discuté avec leurs responsables et ils voient les avantages d'une infrastructure unifiée. J'ai recueilli les spécifications des équipes A, B et C et il semble qu'il y ait des fonctionnalités X, Y et Z que nous pouvons réaliser en un trimestre pour notre bénéfice mutuel. Trois personnes qui y travaillent du côté de mon équipe's investiront plus de temps dans le prochain trimestre pour avoir une solution unifiée codée et testée."

    Manager : "C'est un appel fort pour un nouveau projet. Plusieurs autres équipes ont des seniors/principaux qui cherchent de nouvelles opportunités au sein de l'entreprise, et je vais m'assurer de leur expliquer nos perspectives également. Nous devrions également lancer une motion pour recruter de nouveaux employés, puisque nous en aurons besoin dans six mois. En outre, comment votre travail s'aligne-t-il sur le lancement d'un nouveau centre de données à XXX ? Vous pourriez bien être le cobaye pour leurs nouvelles machines à base de SSD que vous semblez être en mesure d'utiliser à bon escient."

  • E7/M2
    Diriger les domaines d'intérêt.
    Grande concentration inter-équipes.
    Pour une idée d'échelle, pensez à "classement newsfeed" ou "publicité mobile".

    Ingénieur : "Les publicités mobiles vont se développer et générer plus de revenus. Je me demande si les appareils dotés de processeurs plus puissants ou les appareils dotés d'écrans plus grands généreraient plus de revenus et ce que nous pourrions faire pour en tirer parti. Demain, je déjeune avec un E7 de l'équipe UI mobile et nous parlerons de certains tests A/B qui pourraient nous montrer s'il y a de la place."

    Ingénieur : "Nous semblons générer plus d'activité de paging que d'habitude depuis un mois. J'ai fait quelques recherches et je me suis rendu compte que les publicités mobiles affichées sur les appareils fabriqués par XXX ne passent parfois pas's. Cela semble également être lié à YYY installé sur le téléphone. Je rencontre mon équipe d'ingénieurs demain pour approfondir la question -- il pourrait s'agir d'une fausse alerte, mais nous'préférons être sûrs."

    Manager : "Compte tenu de la façon dont je comprends notre activité principale maintenant, les publicités mobiles passent du niveau du navigateur mobile au niveau de l'application mobile. Cela nécessitera une réorganisation des équipes dans environ 2 trimestres et je dois m'aligner avec eux sur nos plans prospectifs."

  • E8/D1
    Niveau directeur.
    Développer les affaires au niveau où le monde est en constante évolution.
    Maintenir et améliorer la culture.

    Directeur de l'ingénierie : "Nous allons retirer nos efforts dans X et les déplacer dans Y. Voici le plan de déploiement pour les prochaines un an et demi. Il est ambitieux, mais j'ai parlé avec les responsables de tous les produits et nous pensons pouvoir y arriver.", où X et Y sont des technologies connexes dans le domaine du stockage de données ou de l'infrastructure ou des langages de programmation.

    (Pensez à Jeff Dean et Sanjay Ghemawat qui présentent MapReduce ou BigTable à toute l'organisation d'ingénierie de Google.)

    Directeur de l'ingénierie : "Nous allons ouvrir un autre bureau d'ingénierie en Europe. Il se concentrera sur la fiabilité grâce au décalage horaire."

    Directeur : "Le mobile est notre avenir et nous devrions viser le lancement de notre propre téléphone d'ici deux ans".

    Directeur : "Le mur est obsolète et la ligne de temps est la façon dont je vois les choses d'ici la fin de l'année".

    Directeur : "X semble être à peu près le gars parfait à envoyer en Asie pour y ouvrir un nouveau bureau d'ingénierie. X, qu'en pensez-vous ?"

  • E9/D2
    La méta-compétence qui consiste à envisager, créer et soutenir tout ce qui précède à partir de rien.