In a few words, I’m a tech manager. I have a background in back-end development and a Ph.D. in algorithmics and graph theory, which I did at the LIFO, University of Orleans. I have around ten years of experience gained in several companies, including happn, BackMarket and Swan. On the development side, I develop principally in Python and Java, even if I occasionally develop in other languages, for example, Javascript or Go.
I invite you to have a look on my resume, or my LinkedIn profile, both accessible at the bottom of this page.
❯ My career path
❯ From my first steps to my thesis
I took my first steps into the world of development in a fairly traditional way: thanks to my TI-82, I started making my little programs in TI-Basic to make life easier in math, physics/chemistry, and engineering science courses, in which I also learned to create my very first developments in C to light a few LEDs or display a countdown on a 7-segment display.
After a (perfectly unsuccessful) try at the university in a biology faculty, I tried the mathematics and computer science path. Then, after taking the first courses in algorithms and object-oriented programming, I studied for a bachelor’s degree and then a master’s degree in computer science. I was particularly fascinated by the subjects of algorithmics, graph theory (relatively simple mathematical models, where points, called vertices, are connected by links called edges, or arcs if they are oriented), computability (is there a computational model, for example a Turing machine, that can solve a problem in a finite number of steps), and algorithmic complexity (in layman’s terms, the number of steps, depending on the size of the input, that an algorithm will need to solve a problem).
I then seized the opportunity to do a PhD for 3 years and write a thesis at the LIFO. The subject was the design of exact and exponential algorithms for solving graph problems (in French, available here). It was a very fruitful experience, during which I contributed to several publications in journals and conferences (see here). I was also a member of the WG 2014 workshop organization. I taught computer science students about computability, complexity, algorithms, networking, and web development (in Java/Struts2. I don’t want to discuss it). During this thesis, I acquired several skills that I still treasure in my current role.
❯ From thesis to present day
Having successfully defended my thesis (and thus becoming 🎓 a doctor of computer science 🎓), two paths were accessible to me.
The first, in the logical continuity of my thesis, is to look for a « Non-Tenured Teaching and Research Associate » contract in a computer science laboratory. This will generally be followed by several others and a few years of post-doctorate. All in the hope of eventually landing the sacrosanct position of associate professor.
The second was to leave the research field and look for a professional opportunity in the private sector. I chose this second option for various reasons:
- Stability / personal life. I’ve been living here for a few years with my partner, who is in a similar professional situation. I can’t see myself moving far away for an indefinite period;
- Impact. Although I’m passionate about the area of research of my thesis, its application is very limited. My thesis supervisor used to say that a concrete application of our work wouldn’t be seen for another thirty years or so. And that would probably be in a lab, by physics researchers.
- Knowledge sharing. As a PhD student, I taught various subjects, from networks and complexity to development lessons. This was something I was particularly interested in. I wanted to get involved to inspire my successors and motivate them to follow these subjects. However, I had overlooked a minor detail: students are ungrateful! Most were not interested in the subjects taught. Moreover, I didn’t have enough time to make my modules effective. The referent teachers didn’t have the time to help me prepare them effectively. Indeed, most of them were overloaded with teaching duties and administrative tasks. Moreover, their main priority is researching and publishing articles for their careers. This also affects their lab’s ranking, which has a direct impact on its funding. And therefore, the ability to grow the team to do more research (and have more teachers).
❯ Moving from the world of public research to the world of private companies
The search for my next professional experience was initially rather complicated. At first, I concentrated solely on the Orléans region. I then did the rounds of Information Technology Consulting companies, developing software in Java+Struts for banks and insurance companies in the region.
In the end, I have accepted a R&D engineer position in a Parisian startup. This first experience in a company whose name I won’t mention was short (around 3 months). I soon found myself maintaining VBA scripts, versioning them with SVN, and executing them in batches daily. It’s a far cry from the Java/Dropwizard solution for algorithms based on graphs discussed in the interview. “Curiously, after 3 months, I learned in an interview that the company’s finances were in a slump and that I’d have to leave the company as part of a “Plan for safeguarding employment”.
❯ Back-end engineer @happn (2 years and 1 month)
I joined a company developing a mobile application, happn, a dating app that lets you find people you’ve met on the street. I had a crush on the company, its employees, and the product. I arrived as a back-end developer in a tech team of around ten people. I took part in migrating the php/Symphony back-end hosted at Online to a distributed architecture in Java/Spring, running on Undertow and using the no-SQL database Cassandra, hosted by GCP. We also used ElasticSearch, in particular, to create cross-references with other users within a reasonable distance radius and match the mutual criteria of age, genre, etc. In parallel with my increasing seniority in my role as back-end developer, the company was also gaining in structure and maturity, moving from the Start-Up state to a Scale-Up, creating a product team, recruiting product owners, new developers, then a VP of engineering who radically transform the organization of the tech team, introducing component teams (mono-disciplinary teams with a product owner playing the role of orchestra conductor; the notion of backlog, sprint, the first rituals coming from agile methodology, etc.), which evolved after a moment into multidisciplinary teams, comprising one or more back-end developers, android, iOS (or even Windows Phone), Product Owner / Manager, designer, QA analyst, and QA engineer.
❯ Lead back-end engineer @happn (2 year and 9 month)
After 2 years as a back-end developer at happn, I took on the role of lead of the back-end team. In addition to my role as a developer, I’ve become the main contact on the back end for the product, data marketing, legal teams, etc. I took a leading role in chairing the various tech team meetings, played an essential role in recruiting new members for my team, and acted as a facilitator in the event of blockages encountered by team members, suggesting the introduction or adjustment of rituals or working methods.
❯ Engineering manager @happn (6 month)
After 2 years and 9 months as a team leader, I gradually evolved into a role closer to that of an engineering manager. I’m taking advantage of the arrival of a new CTO to officially take on this new responsibility. However, deep disagreements with him, and more generally with the top management and the company culture, led me to leave the company. Cf this article (in French).
❯ Engineering manager @BackMarket, (1 year et 11 months)
At the start of 2021, I joined BackMarket, a mission-driven company developing an e-commerce platform selling refurbished high-tech products, as Engineering Manager of a team responsible for the navigation, listing pages, and a part of the search mechanism, the website’s product pages, and the product resale experience (as well as the whole back-office side for the business teams).
As an engineering manager, I was responsible for managing the members of the team (taking part in various rituals, feedback, individual coaching and/or mentoring, setting objectives, organizing quarterly and annual reviews, weekly 1:1 reviews, delegating tasks to help the team gaining in experience, skills, and seniority, coaching the team to move up the seniority ladder (quarterly assessment review). I was also responsible for delivery. At the start of each quarter, I co-construct the roadmap with the product manager (who is responsible for maximizing the value produced by the team) while ensuring that it matches the team’s delivery capacity. I ensured the team delivered what it had committed to throughout the quarter. If not, I intervened to remove any blockers, looked for ways to strengthen the team, or adjusted the roadmap with the PO.
A final aspect of my role as engineering manager concerns the recruitment and growth of my team: taking part in the process of recruiting new team members, splitting up the team to create new ones, and thus separating the scope of responsibilities, as well as the negative side: dismissal when a team member doesn’t meet the expectations inherent in their role.
When I joined the existing team, I changed how the team operated and proposed new rituals to address the team’s problems, mainly a lack of communication between the team and the PM and a virtual invisibility of the roadmap to be delivered. I then proposed a Kanban-based approach, organizing refinement sessions (2 per sprint, to take note of upcoming topics and break them down into tech tasks), sprint planning, and retrospectives to continuously improve the team’s processes, initially lead these various rituals, then delegating them over time to the rest of the team. I’ve also occasionally taken on the technical leadership of cross-company projects, such as migrations common to all the company’s technical teams, or the development of features, such as an AB-test solution using CloudFlare’s workers, to be able to create AB-tests on the front-end without flickering.
In early 2023, my partner and I are expecting a happy event. I then decided to leave BackMarket to become a stay-at-home dad.
❯ Stay-at-home Daddy @LaRomierre, (10 months)
I wouldn't say much about this period, except that I don't regret at any time my decision to dedicate these few months to my role as a stay-at-home dad, available full-time for my child (and my partner). And that I changed more diapers and prepared more bottles than I could ever have imagined! I also took advantage of this period to start writing a few articles, based on my readings, discoveries, and experience, both managerial and technical, that you can find on this blog 🙂. |
❯ Engineering Manager @Swan, (in progress)
I joined Swan, developing a embedded finance product, as Engineering Manager in September 2023. The scope of my team concerns the merchant acquiring and account funding. In other words, the features that allows merchants to receive payments from their customers. I plan to add more details in the future concerning this experience 🤩!!