Carmen Alvarez
Développeuse de logiciels - Lyon, France
Développeuse de logiciels avec une vaste expérience dans plusieurs écosystèmes technologiques, des applications Java aux applications Android en Kotlin et, plus récemment, dans le développement backend en Python et Node.js.
Contact
Email
carmen@rmen.ca
Github
caarmen
Langues
🇬🇧
English (native)
🇫🇷
Français (courant)
🇪🇸
Español (oxidado)
Caractéristiques
check
Force de proposition
check
Minutieuse
check
Analytique
Principes
  • Découpage en petites itérations gérables
  • Releases fréquentes
  • Mise à jour régulière des libs
  • Suivre les recommandations archi
  • Viser une bonne couverture de code
  • Refactoring séparé des évolutions
  • Bien documenter pour l'équipe et pour future moi
  • Langages
  • Python, Kotlin, Java, Javascript, SQL, C/C++
  • Général
  • Conception technique, refactoring, modularisation
  • Intégration continue, Jenkins pipeline, Github Actions
  • Git, GitHub, Pull Request review, Gitflow, trunk-based development
  • Tests unitaires, tests d'intégration, tests end-to-end, couverture de code, sonar
  • Programmation orientée objet, programmation fonctionnelle, scripts
  • Backend
  • YAML, Swagger/OpenAPI, ReDoc, MySQL/MariaDB
  • Pytest, Mocha
  • Django REST framework, Node.js
  • Android
  • MVVM, Room, LiveData, Data Binding, Paging, Material Design
  • Google Play Billing, Espresso, Robolectric, Mockito
  • Projets perso/hobby
  • Spring boot, Qt, FastAPI, Swift, Vanilla JS/Electron, PWA
Expériences
Ingénieur Conception et Développements (Backend)
calendar_today
mar 2022 - Aujourd'hui
group
3 back, 2 front
fmd_good Lyon, France
Développement sur une plateforme SaaS, avec une architecture basée sur des microservices, qui propose des devices virtuels Android dans le cloud
Développement de nouvelles fonctionnalités : endpoints et tâches pour la migration/importation de données. Assister l'équipe SRE dans l'investigation des problèmes de production. Conception technique, estimation et planification des epics des évolutions. Coordination avec l’équipe front-end pour la conception des endpoints REST. Optimisation des opérations SQL en s'appuyant sur l'ORM. Maintenance : corrections des anomalies et mises à jour des dépendances. Culture de documentation, test, et collaboration. Organisation : Équipe avec backend, front, QA, PO. Scrum : sprints de 3 semaines : daily, rétro, grooming, poker planning.
Django REST framework (DRF), Python, Express (Node.js), AMQP (RabbitMQ), tests unitaires et E2E (pytest, Mocha), Swagger/OpenAPI/ReDoc, MariaDB/MySQL, GitHub, Jenkins, Kibana, gateway, GraphQL
Mobile Lead
calendar_today
oct 2018 - fév 2022 (3.4 ans)
group
1-2 Android, 1 iOS
fmd_good Paris, France
Suite de l'expérience précédente : toujours le projet Libon mais au sein de l'entreprise Libon.
Développement des évolutions : intégration des nouveaux moyens de paiement (espèces via cartes à gratter ou qr code à scanner, carte bancaire via Stripe), refonte UI/UX, ajout de nouveaux produits à acheter. Customisation du SDK Braintree pour améliorer l'UX de la validation 3DS pour les achats par carte bancaire. Intégration de l'A/B testing pour le paiement par carte bancaire (fournisseurs Stripe vs Braintree). Migration du code legacy vers des standards récents : migration des écrans avec toute la logique dans l'activity vers MVVM, migration des tests Robolectric vers Espresso, migration des AsyncTask vers Kotlin coroutines. Modularisation du projet monolith à 60 modules, pour une meilleure organisation de la code base et l'élimination des dépendances cycliques. Mise en place des outils pour améliorer le développement des deux plateformes iOS et Android : génération des release notes sur GitHub, suivi de la couverture de code, suivi de l'évolution de la migration Objective-C vers Swift, jobs Jenkins pour synchroniser des strings de Lokalise, job Jenkins pour builder un fork de libphonenumber pour iOS. Organisation : 1 release par mois en moyenne, daily avec les équipes mobile, backend et support, PR (même avant l'intégration d'un deuxième développeur Android).
Android Studio/Gradle, Kotlin, Coroutines, MVVM, Modularisation, Androidx/Jetpack, Android Architecture Components, Room, LiveData, Data Binding, Paging, Material, Google Play Billing, Firebase Crashlytics, Linphone, Libphonenumber, Json, Glide, Volley, Mapbox, Brainree, Sripe, Github, REST, Junit, Robolectric, Espresso, Mockito, Jenkins pipelines, Jacoco, Detekt, PR, Code Review
Ingénieur Conception et Développements (Android)
calendar_today
aoû 2011 - sep 2018 (7.2 ans)
group
1-13 Android
fmd_good Châtillon, France
L’application Libon permet de passer des appels VoIPout vers + de 150 pays.
Développement sur l'application Libon avec d'autres développeurs Android basés à 3 sites (Châtillon, Lannion, Roumanie). Intégration et customisation du SDK Linphone en C/C++ (NDK). Augmentation de la couverture de code de 20% à 85%. Modernisation de la code base avec la migration vers Kotlin, l'introduction des Google Architecture Components (LiveData, ViewModel, Room) et d'autres outils fournis par Google (ConstraintLayout, Data Binding, SMS Retriever). Intégration des outils d'intégration continue (CI) dans un Jenkins avec Docker : Pipeline, Sonar, Jacoco, déploiement vers HockeyApp et Nexus. Intégration des SDK Google Billing et Braintree pour les achats. Point de contact avec les fournisseurs des SDK tierce partie. Publication sur Google Play. Suivi des crashs sur Fabric/Firebase Crashlytics. Intégration de l'A/B testing avec Firebase Remote Config. Organisation : Feature et component teams, PR review, Scrum: sprint de 2-3 semaines, daily, rétro, démo.
Android Studio/Gradle, Eclipse/Maven, Kotlin, Java, C, C++, Shell, Linphone, SIP, RTP, Libphonenumber, Json, Retrofit, RxJava, Firebase Remote Config, Firebase Cloud Messaging (FCM), Crashlytics, Smartling, MVP, REST, Robolectric, Mockito, Wiremock, Gitlab, Github, Jenkins, Jacoco, Sonar, Scrum, Pull Request, Code Review
Senior Consultant
calendar_today
oct 2006 - fév 2011 (4.4 ans)
group
1-3 Devs
fmd_good Paris, France
Ariba fournit des applications et services B-to-B d’amélioration du processus d’achat.
Customisation du logiciel Ariba pour des besoins du client. Lead d'une équipe de 2 autres développeurs. Clients: AXA, Alstom, BNPP, Société Générale, Decathlon, RTE, Sanofi-Aventis. Présence chez les clients ou depuis le bureau d'Ariba.
Java, Weblogic, Eclipse, Oracle, Maven, Windows, Svn, Perforce
Consultant
calendar_today
nov 2004 - sep 2006 (1.9 ans)
group
3 Devs
fmd_good Noisy-le-Grand, France
Mission à la RATP
Développement d'un logiciel de supervision d'équipements dans les stations et gares de la RATP
C++, GCC, GDB, Makefile, Java, SNMP, Linux, CVS
Consultant
calendar_today
jul 2003 - fév 2005 (1.7 ans)
fmd_good Télétravail, Temps partiel
Customisation du logiciel Lumos, supervision des équipements réseau, pour les besoins de Net.com
Java, JSP, Tomcat, SNMP, SQL, Ant, Windows
Member of Technical Staff
calendar_today
nov 2000 - déc 2002 (2.2 ans)
group
7 Devs
fmd_good Santa Monica, California
Développement sur un logiciel de supervision des équipements réseau
Java, JSP, Tomcat, SNMP, SQL, Ant, Windows
Client Integration Engineer
calendar_today
mai 2000 - oct 2000 (0.5 ans)
fmd_good Los Angeles, California
Customisation du logiciel B-B de homepage.com pour les besoins des différents clients
Perl, C, BSD, CVS
Publications
Formation
  • Maîtrise ès sciences, Informatique
    Université de Montréal
    Équivalent en France : Bac + 5/6
    Janvier 2003 - Mai 2004
  • Bachelor of Science, Computer Science
    California State Polytechnic University-Pomona
    Équivalent en France : Bac + 4
    1998 - 2000
  • Bachelor of Science, Civil Engineering
    California State Polytechnic University-Pomona
    Équivalent en France : Bac + 4
    1994 - 1998