Adrien Joly

Montreuil, France

64x64

About

I develop and maintain scalable web software in production. To sustain quality and velocity, I help teams write readable and predictable code, effective documentation, and ever-running automated tests. I love to share what I've learned and learn from others.

Email: contact@adrienjoly.com

Work Experience

SHODO

Senior Software Engineer / Tech Lead

2020 - Present

I joined SHODO to nurture my "software craft" skills with like-minded professionals and apply them during missions.

  • Lead the refactoring of a JavaScript-based data integration pipeline for « Signaux Faibles », a startup helping companies prevent bankruptcy.
  • Wrote and published "Comment rendre un code legacy à nouveau maintenable" – How to make legacy code maintainable again – on SHODO's blog.

Algolia

Senior Software Engineer / Tech Lead

2017 - 2020

I lead the development and maintenance of Algolia’s Custom Crawler, a scalable distributed system built with Node.js and running on Google Kubernetes Engine.

  • Turned a PoC into a robust product used by prestigious customers.
  • Put up automated tests and production maintenance recipes.
  • Trained team-mates to write atomic PRs, and sustainable code and tests.
  • Gave talks about testing, pair programming and team communication.
  • Wrote "The Challenging Migration from Heroku to Google Kubernetes Engine".

EEMI / ESGI / Web School Factory

Teacher

2015 - Present

  • Authored and gave a course on back-end / API programming with Node.js.
  • Previously, I taught JavaScript programming to 12 groups of 1st-year students.

Independant Product Maker

(Self-Employed)

2015 - 2017

  • Co-authored "Startup Tour", a 2-hour MOOC on the Lean Startup method.
  • Developed and launched several products and browser extensions, including "Next Step for Trello" (5/5 rating, 30k+ users)
  • Published my challenges and learnings regularly on Medium, YouTube and Twitch.

Freelance

Full-stack Node.js / Meteor / JavaScript web application developer

2015 - 2017

I built full-stack web applications and data processing scripts. See my work on https://github.com/adrienjoly.

  • Apr. 2015: Built a dashboard to visualize data from uploaded CSV files, for Deepki
  • Jun. 2015: Helped a team build a marketplace, for FreelanceRepublik
  • Jul. 2015: Wrote a script to convert data tables from PDF to CSV files, for Deepki
  • Sep. 2015: Built a web app. to curate and promote hackathons, for BeMyApp
  • 2015-2016: Built a e-commerce website to rent designer clothes, for Panoply
  • 2015-2016: Coached the Agile development team of a startup company: Ayni
  • Sep. 2016: Coached a young developer building Meteor.js apps, for Simplon.co
  • Sep. 2017: Gave a 8-hour workshop on Lean Management, at ESGI

Whyd

Lead Software Engineer

2010 - 2015

Lead developer of a B2C startup product, from its inception. The product peaked at 100000 users, after press releases on Techcrunch, Lifehacker, and Engadget.

  • Discussed objectives with founders and proposed adequate technical solutions
  • Lead 1 designer, 1 iOS developer (remote) and 1 web developer
  • Developed the front-end and back-end, starting with Node.js v0.3
  • Projected a large semantic graph into our production MongoDB database
  • Open-sourced as "Openwhyd" after I left the company, in 2016.

Alcatel-Lucent Bell Labs

PhD, Researcher in Context-Aware Social Networking

2007 - 2010

(see "Education" section for more information about my PhD thesis)


Atos Origin

Mobile Software Engineer

2006 - 2007

Consultant in the Mobile Devices team. (Pocket PC, Windows Mobile, J2ME)

  • Developed a HTTP-SmartTP proxy to run on a SIM card, for Gemalto.

Sauce Software

Freelance Software Developer

2005 - 2006

  • Developed a Joomla module to synchronize users with cPanel and vTiger CRM

Intergraph Public Safety

Software Developer (intern)

2005 - 2005

Dispatching software used by firefighters' HQ in the south of France.

  • Extracted a DLL library from a monolithical C/C++ codebase.

Isotools

Software Developer (intern)

2003 - 2004

R&D project: integrate interative map-based charts in their CMS.

  • Built a compiler in C++ to store vector data into Flash/SWF binaries.

Volunteer projects

Openwhyd.org

Open Source Lead Developer and Coordinator

2016 - Present

After leading the development of the product formerly known as whyd.com during 3 years, I migrated its codebase into an open-source project. Today, I'm contributing to the development of Openwhyd, and coordinating other contributors.

  • Turned ex-startup product into an open-source project
  • Migrated the service to better-adjusted production instance on DigitalOcean
  • Launched a successful OpenCollective campaign to crowdfund hosting fees

fHACKtory Hackathons

President, organiser, presenter

2013 - 2015

Organised 4 tech-focused hackathons in Paris and Lyon.


Angelhack Paris Hackathon

Ambassador, organiser, presenter

2013 - 2013

Organised the 2nd edition of Angelhack Paris, at Cifacom, for ~100 participants.


Education

INSA Lyon - Institut National des Sciences Appliquées de Lyon

Information Retrieval • Context Awareness, PhD

2007 - 2010

CIFRE PhD thesis in partnership with Alcatel-Lucent Bell Labs France.

  • Designed, prototyped and experimented a solution to match distant colleagues based on the similarity of the topics they are currently working on.
  • Developed and deployed a Firefox extension + a matchmaking server.
  • Published 7 papers in international conferences and journals. https://scholar.google.fr/citations?user=BI3HXcsAAAAJ
  • Contributed to a ITEA2 European research project, and co-authored 3 patents

INSA Lyon - Institut National des Sciences Appliquées de Lyon

Information Technology, MSc

2003 - 2006

  • Final year at Queensland University of Technology, in Brisbane, Australia.
  • Developed a PoC for Dr. Tjondronegoro, and co-authored 3 research publications.

Skills

  • Software Craft

    • TDD / BDD
    • Pair / Mob programming
    • Legacy Refactoring
    • Clean Code
    • SOLID
  • Web Development

    • Node.js / Express
    • JavaScript / TypeScript
    • React / Vue.js
    • Git
    • Go
  • Testing & CI

    • Jest / Ava / Mocha
    • Cypress / Webdriver
    • GitHub Actions
  • DevOps & Maintenance

    • Docker
    • Kubernetes
    • Google Cloud Platform

References

Le travail d’Adrien est irréprochable, le code produit est de qualité et répond très exactement à l’objectif fixé. Adrien est ouvert d’esprit, créatif et la communication a été très fluide au sein de l’équipe. On remarque immédiatement qu’il est passionné par ce qu’il fait et son enthousiasme est communicatif. En somme, il m’a appris beaucoup de choses, j’ai pris un réel plaisir à travailler quotidiennement avec lui et j’espère que nous aurons de nouveau l’occasion de travailler ensemble. - Pierre Camilleri – Data Scientist, Signaux Faibles / Banque de France

His thoroughness, ingenuity, and ability to respond rapidly to issues makes him an indispensable member of our team. But he is more than just a programmer, his business intuition and entrepreneurial spirit bode very well for whatever future projects he chooses to embark upon. - Anthony Hymes – Digital Marketing Manager, Whyd

Reliable, pleasant, creative, passionate, strong technical/communication skills, tough on problem solving, end user satisfaction oriented. He managed to create an overall group cohesion in the team because of his constant good humor, never hesitating to lend a hand by sharing his knowledge with his colleagues. It has been a great pleasure working with Adrien. - Nasreddine Bouzada – Software Architect, Atos

Adrien's capacity to ask the right questions, his motivation to define new scenarios that help people in their communication needs were key in the success of my Master thesis and the resulting publication. By having Adrien as a supervisor you have the certainty of fully enjoying each moment of your work. - Johann Stan – Research Engineer / PhD Candidate, Alcatel-Lucent Bell Labs