Carmen Alvarez
Software developer - Lyon, France
Seasoned software developer with extensive experience in multiple tech ecosystems, including Java applications, Android applications in Kotlin, and more recently backend development in Python and Node.js.
Contact
Email
carmen@rmen.ca
GitHub
caarmen
Languages
🇬🇧
English (native)
🇫🇷
Français (courant)
🇪🇸
Español (oxidado)
Characteristics
check
Proactive
check
Meticulous
check
Analytical
Principles
  • Split features into manageable iterations
  • Release frequently
  • Keep dependencies updated regularly
  • Follow recommended architectures
  • Aim for a good coverage of code by tests
  • Separate PRs for refactoring and features
  • Document well for others and for future self
  • Languages
  • Python, Kotlin, Java, Javascript, SQL, C/C++
  • General
  • Technical design, refactoring, modularization
  • Continuous integration, Jenkins pipeline, Github Actions
  • Git, GitHub, Pull Request review, Gitflow, trunk-based development
  • Unit test, integration test, end-to-end test, code coverage, sonar
  • Object-oriented programming, functional programming, 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
  • Hobby/Personal projects
  • Spring boot, Qt, FastAPI, Swift, Vanilla JS/Electron, PWA
Experiences
Design And Development Engineer (Backend)
calendar_today
Mar 2022 - Current
group
3 back, 2 front
fmd_good Lyon, France
Development on a SaaS platform, providing Android virtual devices in the cloud, using a microservices architecture.
Development of new features, including new endpoints, and jobs for data migration and import. Assist SRE team in investigation of production issues. Technical design, estimation and planning of feature epics. Coordination with the front-end team for REST endpoint design. Performance optimization of SQL operations using the provided ORM. Maintenance: bug corrections and dependency upgrades. Culture of documentation, testing and collaboration. Organisation : Team with backend, front, QA, PO. Scrum: 3-week sprints: daily, retro, grooming, poker planning.
Django REST framework (DRF), Python, Express (Node.js), AMQP (RabbitMQ), Unit and E2E tests (pytest, Mocha), Swagger/OpenAPI/ReDoc, MariaDB/MySQL, GitHub, Jenkins, Kibana, gateway, GraphQL
Mobile Lead
calendar_today
Oct 2018 - Feb 2022 (3.4 years)
group
1-2 Android, 1 iOS
fmd_good Paris, France
Continuation of the previous experience: Still the Libon project, but directly within the Libon company.
Feature development: Integrated new payment means (cash via scratch cards or qr codes, bank cards via Stripe), UI/UX redesign, integration of new products to buy. Customized the Braintree SDK to improve the 3DS validation UX for credit card purchases. Integrated A/B testing for credit card payments (Stripe vs Braintree vendors). Migrated legacy code to modern standards: migration of screens with all the logic in activities to MVVM, migration of Robolectric tests to Espresso, migration of AsyncTask to Kotlin coroutines. Modularized the monolith project to 60 modules, for a better organization of the code base, and elimination of cyclical dependencies. Implemented/integrated tools to improve the development of both iOS and Android platforms: generation of release notes on GitHub, monitoring of code coverage, monitoring the migration of the Oblective-C to Swift migration, Jenkins jobs to synchronize strings from Lokalise, Jenkins job to build a fork of libphonenumber for iOS. Organization: 1 release per month on average, daily with the mobile, backend, support, and QA, PR.
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
Design And Development Engineer (Android)
calendar_today
Aug 2011 - Sep 2018 (7.2 years)
group
1-13 Android
fmd_good Châtillon, France
The Libon app provides VoIPout calling to more than 150 countries.
Develop features and maintain the Libon Android app, which provides phone calls to mobiles and landlines over internet (VoIP). Integrate and customize the Linphone SDK (NDK). Increased unit test code coverage from 25% to 88%. Modernize the code base with Kotlin migration, introduction of Google architecture components (LiveData, ViewModel), and other tools released by Google (ConstaintLayout, data binding). Integration of CI tools in a dockerized Jenkins: Pipeline, Sonar, Jacoco, deployment to HockeyApp and Nexus. Integration of the Google Billing library and other 3rd party billing solutions. Point of contact with providers of third-party SDKs. Publication on the Play Store. Organization: Feature teams and component team, PR, code review, Scrum: 2-3 week sprints, daily, retro, demo.
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 - Feb 2011 (4.4 years)
group
1-3 Devs
fmd_good Paris, France
Ariba provides applications and B-to-B services for spend management.
Customize the Ariba software for client needs. Led a team of two other developers. Clients: AXA, Alstom, BNPP, Société Générale, Decathlon, RTE, Sanofi-Aventis. Worked both at the client site and from the Ariba office.
Java, Weblogic, Eclipse, Oracle, Maven, Windows, Svn, Perforce
Software Developer/Consultant
calendar_today
Nov 2004 - Sep 2006 (1.9 years)
group
3 Devs
fmd_good Noisy-le-Grand, France
The RATP is the public transport operator in the Paris area
Developed a software to monitor equipment in the RATP stations.
C++, GCC, GDB, Makefile, Java, SNMP, Linux, CVS
Software Developer/Consultant
calendar_today
Jul 2003 - Feb 2005 (1.7 years)
fmd_good Remote, Part-time
Customization of the Lumos Technologies network equipment monitoring software, which was acquired by Micromuse, for the customer Net.com.
Java, JSP, Tomcat, SNMP, SQL, Ant, Windows
Member of Technical Staff
calendar_today
Nov 2000 - Dec 2002 (2.2 years)
group
7 Devs
fmd_good Santa Monica, California
Developed features for a network equipment monitoring software.
Java, JSP, Tomcat, SNMP, SQL, Ant, Windows
Client Integration Engineer
calendar_today
May 2000 - Oct 2000 (0.5 years)
fmd_good Los Angeles, California
Customized the B-B homepage.com software for different clients.
Perl, C, BSD, CVS
Publications
Education
  • Master of Science, Computer Science
    Université de Montréal
    French equivalent: Bac + 5/6
    Jan 2003 - May 2004
  • Bachelor of Science, Computer Science
    California State Polytechnic University-Pomona
    French equivalent: Bac + 4
    1998 - 2000
  • Bachelor of Science, Civil Engineering
    California State Polytechnic University-Pomona
    French equivalent: Bac + 4
    1994 - 1998