My resume is available there.
I am a technical leader with deep software engineering and managerial expertise. I’m helping companies improve their software engineering practices, their organization, and their software architecture.
I have built and led successful teams with more than 20 developers (several times), and I’m hands-on at expert level on app-dev cloud technology. I focus on value creation and continuous improvement. I get teams to be motivated, self-sufficient and value-oriented, how I do that is documented on this blog.
I’m personable. I live in Vancouver BC, in Canada.
I do mentoring, learn more about that here.
I Believe In
Continuous Improvement. Lean, agile, product development flow. Separation of concerns. Simple, organic solutions. Natural processes. Clean architecture. Smart people. Self-organizing teams.
Proactive. Driving. Bilingual French / English. Balanced between business and technology. Personable. Pragmatic. Excellent at conceptualizing. Systemically organized. Driven by value creation. Hands-on with technology.
Microsoft - Principal Engineering Manager - Teams Platform
Mar 2021 - Now, Vancouver BC, Canada
Managing a dev team responsible of increasing the market share of Teams in small and medium businesses by extending Teams specifically for them. We are creating a new integration surface to collect payments through third party providers such as Stripe, Paypal and such. This allows these to build payment apps, unlocking new scenarios such as paid meetings. Service built in .net Core on top of Service Fabric and Cosmos DB. Active contributor to design, development, code reviews and operations.
Amazon - Software Development Manager - Recruiting tech
Dec 2019 - Mar 2021, Vancouver BC, Canada
Managing two engineering teams in charge of driving the architecture and building foundational components to replace a monolithic solution with scalability issues by a decoupled set of services built in Java and deployed on AWS using Lambda functions and Dynamo DB. My job has two main aspects to it: operational with the team, and transformational with the organization.
As my team provides core-components, a lot of other teams depend on it. Therefore I organized the team following lean principles and Kanban. Building the tooling myself (see the generic open source part of it) to predict delivery times based on data (calculating cost of complexity and variability) and forecast accurate timelines based on that, with a surprising level of success. The outcome is a well-oiled machine which provides systematic data-derived answers rather than guesses.
I’m also driving organizational and architectural discussions to switch from a coupled organization built around a tightly coupled shared monolith, and the waterfall/output-oriented mentality to comes with it, into a set of autonomous and decoupled teams focused on outcome. How I’m doing it is by introducing the value proposition of the architecture we are introducing, and ensuring that each team uses that in there planning; pushing for the creation of a hierarchy of objectives, and by challenging output-driven goals to be replaced by outcome driven ones: i.e. getting better at delivering what our customers need, rather just following a plan.
Microsoft - Cloud Solutions Architect - Application Development
Oct 2017 – Dec 2019, Vancouver BC, Canada
As a trusted advisor to my customers, I have the following responsibilities to them:
- Provide deep technical guidance on cloud architecture and software design.
- Thing long term, make sure their cloud adoption is organic, sustainable and optimal. Make sure they get value out of it.
- Support the creation of a cloud practice, raise the bar of software delivery and operations practices.
- Walk with the customer along their cloud journey, defining governance and cost management in an iterative way, help them graduate to the next maturity level
- Act as an coordinator between all the actors: customers, partners, and other Microsoft resources. Leverage all the help I can to deliver the best service to my customers, and the most reach to my colleagues and partners.
- Help them identify hiring and training needs
As a Lead Cloud Solutions Architect I have the following internal responsibilities:
- Organize and orchestrate the work of Microsoft resources on the accounts I lead (architects, specialists, business teams, support, experts, product teams)
- Reflect and participate extensively to the local definition of the role of Cloud Solutions Architects based on lean, agile and product flow principles: how to qualify, prioritize, scope and schedule projects, measure our impact on customer success, standardize and generalize our work, and interface internally with the team and externally to the extended team.
- Design, implement and operate tooling to support our local process. Iterate with Microsoft corporate IT on how to generalize it.
- Stay sharp technically, keep up with new products, keep my delivery skills real and current.
BuildDirect Technologies - Senior Software Engineering Manager (acting director of engineering)
Apr 2016 – Oct 2017, Vancouver BC, Canada
Managing 3 engineering teams (16 people). Fixed productivity of my teams by
- fixing the process to restore focus
- fixing product management to focus on business value and metrics
- re-motivating team by linking work to value.
Then added a 2nd, then 3rd team to my patch, and repeated the process.
Upgraded recruitment process to hire great engineers. Globally helped create drive, and target higher engineering standards and cleaner code.
Architected software, including event sourcing and collection, implemented some of it.
MediaValet - Software Development Manager
Dec 2013 – Apr 2016, Vancouver BC, Canada
Development Manager of the company’s SaaS product, hosted on Azure, storing media assets on the cloud. Organized product development flow with Lean, Kanban and Product Development Flow.
Setup continuous integration, several daily production deliveries. Prioritize work using business value. Recruited & managed 20+ developers on and offshore.
Accenture - Solution Architect / Project Manager
Jan 2007 – Dec 2013, Paris, France
From Aug. 11 to Aug. 13, project manager for a management consulting project for Paris Transit Authority, defining their future fare system (~ Compass). Led the solution architecture for a project to be built during the next 4 years, estimated to $480M. Defined the organizational structure for implementation and operation. Drove the client relation and business development effort, signed 8 extensions to the initial contract.
From Apr’10 to Jul’11, lead solution architect for the transformation of an Accenture on premise solution into a SaaS platform. Led functional analysis and technical design. Supervised agile scrum delivery. Developed proof of concepts in C#, and cool technologies such as CEP and BRMS.
From Jul’08 to Mar’10, integration lead for Toronto’s PRESTO Card System, overseeing a team of about 10 persons. Designed and participated to implementation using BizTalk and C#.
From Jan’07 to Jun’08, integration developer then integration lead for Netherlands Nationwide fare-card system, using BizTalk and C#.
Amundi Pioneer Asset Management - Software Engineer
Sep 2005 – Dec 2005, Paris, France
Software Engineer in investment service of Crédit Agricole Asset Management, the first asset manager in France. Integrated in the IT team of the service, I worked for managers, analysts and research team, with direct relations. I developed several software for immediate needs of the rest of service.
3IE - Institut d’Innovation Informatique de l’EPITA - Software Engineer
Sep 2004 – Jul 2005, Paris, France
C# .Net Developer at the Computer Innovation Institute of EPITA
2002-2007 - Master’s degree of Engineering, EPITA, Paris. Majored in Systems & Software Engineering. Graduated with Highest Honours.
Passions & Hobbies
Backcountry skiing. Mountain Biking. Hiking. Sailing. Fencing. Reading.
Instructor to skiers with disability with VASS. Certified with the Canadian Association of Disabled Skiers, and Canadian Ski Instructors Alliance.