Le Starter Pack du Software Engineer pour la certification AWS Developer Associate

I. Intérêt de la certification

A. Pour qui

Selon AWS, cette certification s’adresse à ceux qui ont déjà travaillé avec leurs services pendant 1 an au minimum. Selon moi, vous pouvez la passer même sans expérience préalable en cloud, en suivant des cours qui se concentrent sur le plus important et sur ce qui est évalué. Mais il faudra vous armer d’un peu de courage (et de beaucoup de temps) et vous appuyer sur des collègues expérimentés pour bien comprendre les différents concepts… ou sur un chat IA.

Pour quelqu’un dans ce cas, une période d’intercontrat ou de charge de travail légère en mission peuvent être une bonne occasion de s’y attaquer.

B. Pourquoi

Cette certification évalue les connaissances nécessaires pour comprendre et concevoir des applications cloud. S’il s’agit ici d’AWS, la plupart des outils cloud connaissent des équivalents chez les clouds concurrents, ou en tout cas se reposent sur les mêmes concepts. Il est donc facile de voir cette certification comme un apprentissage général des outils et de l’architecture cloud. Ça la rend très intéressante pour un développeur qui aimerait mieux s’y connaître en cloud, ou qui aimerait prendre du recul par rapport à son code et avoir une vue plus transverse. Elle nous donne aussi un bel avantage lors des entretiens pour des missions de développement avec des solutions hébergées sur le cloud.

Par exemple :

  • Les notions de subnet public / privé, et le rôle des Internet Gateway et NAT Gateway
  • Le notions d’instance EC2, tâche et leur parallèle avec Kubernetes
  • L’intérêt du serverless
  • etc...

On apprend aussi à identifier les architectures qui correspondent aux différents Use Cases, ce qui est très intéressant pour toute personne qui viserait un poste de tech lead ou d’architecte. C’est notamment sur ça que nous sommes évalués lors du passage de la certification.
Si elle ne se focalise pas vraiment sur la pratique technique, elle évalue certaines connaissances techniques, notamment la compréhension de fichiers yaml de description d’infrastructure, ou de JSON de politiques IAM.
Et finalement, on apprend les différentes problématiques du cloud : scalabilité, résilience, sécurité, observabilité.

II. Préparer l’examen

A. Ressources

  • Les slides disponibles sur le site d’Ippon (accessible seulement pour les employés). Elles donnent une idée du style d’évaluation : https://sites.google.com/ippon.fr/software-engineering/formation/les-certifications?pli=1&authuser=1
  • Le cours qu’on m’a recommandé est celui de Stéphane Maarek sur Udemy. Il est globalement très clair et ne s’étale pas sur les détails qui ne sont pas évalués dans la certification. Un seul bémol, quelques chapitres manquent de lien conducteur; il faut parfois réorganiser un peu les notes pour leur donner un sens et les rendre plus facilement mémorisables.Il faut compter une trentaine d’heures de vidéos, qu’il faut au moins doubler pour prendre des notes, comprendre, refaire des schémas si besoin, ce que je recommande.https://www.udemy.com/course/aws-certified-developer-associate-dva-c01/

B. Conseils

  • Faites-vous une fiche de notes séparée du reste avec uniquement les valeurs à connaître par cœur. Par exemple :
    • la résolution des metrics CloudWatch
    • les tailles maximum des données pour les services
    • le nombre max d’exécution parallèles d’une Lambda
    • etc.

Elles seront plus faciles à consulter pour réviser, ça vous fera gagner quelques points à l’examen.

  • Aidez-vous d’un chat IA pour mieux comprendre les différences entre les services et leur fonctionnement. Échanger aide à comprendre, et comprendre à retenir.
  • Téléchargez les slides, pour les relire mais surtout faire des impressions d'écran des schémas. Un schéma bien annoté d’un service vaut mieux que mille descriptions, et surtout se révise plus vite.
  • Mettez une alerte de paiement dans le menu Cost and Usage, si vous faites des manipulations dans la console AWS. Stéphane Maarek montre comment le faire au début de ses cours ; sinon vous risquez de payer chaque mois des services que vous aurez oublié de supprimer. L’alerte vous dira par mail si vous êtes encore facturés.

C. S'entraîner

Faire des tests blancs est fondamental pour se situer par rapport au niveau attendu. Les questions difficiles aident à savoir ce qu’il faut approfondir avant de passer l’examen

III. Passer l’examen

A. Astuces pour trouver la bonne réponse

  • Associer les mots et concepts aux services AWS. Certains mots clés aiguillent directement vers les services à utiliser
    • serverless : API Gateway, Lambda, DynamoDB…
    • container : ECS
    • trace : X-Ray
    • real-time : Kinesis Data Streams, …
  • Procéder par élimination. Il y a souvent 2 réponses qui sont clairement mauvaises, et une qui ressemble à la vraie réponse ; pour celle-là faire bien attention aux mots exacts qui sont utilisés.
  • Bien différencier les outils d’IaC (Infrastructure as Code), parce qu’il est facile de s’y perdre : Cloudformation, Amplify, SAM, Beanstalk…
  • Les mots absolus comme "Always", "Never", ou "Only" sont souvent des indicateurs de mauvaises réponses (source de cette astuce : Gemini, donc à prendre avec des pincettes)
  • Bien différencier les chiffrements
    • “in-transit” (Terminaisons de connexion HTTPS, AWS Certificate Manager, protocol policies..)
    • “at-rest” (clés KMS)

Avec cette méthode, j’ai obtenu un résultat de 84% à l’examen. Ça m’a pris plusieurs mois, principalement en travaillant le soir, pour y arriver. J’ai été assez irrégulier dans mon apprentissage, ce qui m'a sans doute fait perdre du temps.

B. L’examen

On a besoin de plusieurs comptes pour pouvoir passer la certification et faire reconnaître son statut de certifié AWS :

  • Un AWS Builder ID : l’identifiant personnel utilisé par AWS pour vous reconnaître sur ses différentes plateformes.
  • Un compte APN Partner : il permet de rattacher vos certifications à l‘entreprise partenaire, Ippon.
  • Un compte AWS Certification Center : pour les certifications et programmer les examens

L’examen peut se passer dans un centre de certification, ou en visio. Je recommande la visio, parce que les disponibilités en centre sont limitées, et le passage en visio se fait facilement. Il faudra dans un premier temps faire évaluer votre connexion (qui doit être excellente) en installant un logiciel. Il est déjà arrivé que la connexion chez Ippon ne soit pas suffisante.

Il faudra également trouver un bureau isolé avec ni tiroir, ni objet à portée de main, dans un endroit très calme. Vous serez filmés et enregistrés pendant toute la durée de l’examen, et si les évaluateurs entendent ou voient des personnes, ils annuleront l’examen.

IV. Ce que la certification n’apporte pas

Même si cette certification couvre beaucoup de concepts importants du cloud, elle ne transforme pas pour autant en expert AWS. Elle apporte surtout une bonne compréhension des services, de leurs usages et des principales architectures cloud modernes. Par contre, elle couvre beaucoup moins les aspects pratiques du métier, comme acquérir une réelle expérience de production, maîtriser la console AWS ou encore déployer et maintenir une infrastructure cloud.

Dans mon cas, j’ai préparé la certification presque sans coder ni manipuler AWS. La difficulté vient surtout de la compréhension des concepts, des différents cas d’usage et des compromis d’architecture. C’est donc avant tout une certification de compréhension et de conception, plus qu’une certification très technique ou orientée exploitation.