My path of software craftsmanship — the long way
My return on experience of 10 years of craftsmanship

Thorough my career until in June 2010, I realised that I was on the wrong track. I was living in Paris for 2 years already. I was late in terms of skills and knowledge. I knew I had to catch up with others, I was missing something, maybe a lot of things. So I decided to work on it, trying to keep to speed.
First thing is to measure myself. I was probing the market, looking for a job, publish my resume the same way I did back then when I just graduated from the University of Sherbrooke. I went through more than 10 interviews. I noticed I was timid in interviews. I did not know much and was not good in answering questions. I was confident in myself, at least I believed I was. I had 6 years of experience and was considering myself as senior or close to senior. However, interviews did not go so well because I had only practical experience, and knew almost nothing in terms of theory. As a matter of fact, things get caught up. I was not good, experience was not 100% relevant. Knowing a few things was not sufficient. Companies needed a more solid background. I was a senior Java developer, with no mastering of Java, Spring and Hibernate in the theory. Some concepts were vague to me.
So I decided to run a personal project to practice myself developing an application at home. I searched and learned interview questions. I invited a friend home to help me simulate interviews. I read the books on Spring, Hibernate. I was already good on Java thanks to the Sun Certified Java Programmer. And things got better. I had an offer for a Job, by decided to refuse, for a personal and administrative reason. Long story shot, later got another offer without real interview.
So I worked hard to see some progress. I thought it was hard. If I look back from my present’s point of view. It was not much work I had done compared to what I have done later.
In 2013. I decided to go back to my home town, Montreal. I had also hard time to find a job, but finally got one at Ericsson. I worked with a great team. Marco Miller, one of the team member and many thanks to him., quite kind and listening to people, had books at this office, in the open space. He introduced to me the Clean Code and Clean Coder, by Robert C. Martin. I decided them to buy for myself…
Then the craftsmanship journey started, with joy and passion.

The beginning of the journey
I started reading the two books. There were a few things I already know, but surprisingly, there were also many, many things I did not know! I learned. And after one months or so, I finished them. Then things got pulled together, the same way when we pull a web, other related things come along. I bought also “Software Craftsman, The: Professionalism, Pragmatism, Pride”, by Sandro Mancuso, and “Clean Architecture” by Robert C. Martin. I then discovered TDD, BDD, DDD, docker, nodejs, angularjs, testing, microservices and so on…
New knowledge, concepts, principles, approaches, methods, technics… I was delighted to discover, understand and digest.
It was just the beginning. Everything need practices as complement to really absorb and digest. So I still had a long way to go. Agree?
In 2014, I went back to Paris again, for personal reason again. And back then I work on multiple projects, switching from one to another. I learned new stuff, and tried to put in practices here and there. I was clearly not good enough. I obviously misunderstood things like TDD and BDD, like many would misunderstand the essence of them.
TDD is not a matter of just having written tests. BDD is not only about having tests using Gherkin.
DDD was more obscure to me. I had to buy the blue and red books :
- Domain-Driven Design: Tackling Complexity in the Heart of Software, by Eric Evans (blue)
- Implementing Domain-Driven Design, by Vaughn Vernon (red book)
But I was still to lazy to read them, so I took years. Until now I haven’t completely read the whole.
By end of 2018, I met François Lecomte, entitled as a CTO at Wemanity. He was a craftsman and led a community of developers. I had a good feeling with him so I decided to join Wemanity and I paired up with him for more than a year. We promoted craftsmanship as core mindset and culture, and kept making a tech community active within company, as a perfect complement to the strong agility mindset and culture of Wemanity. Later, he left the company and I took over. I built materials for training, pre-sales, workshops, internal and external events. Everything was just an aggregate of materials learned and found from somewhere else. Honestly I did not invent anything new. Rather I put things together and structure them to make them more easier to grasp and put in practices on the field. So I trained tens of people the craftsmanship way, in France and in India.
Just to highlight a few aspects :
- Core principles and rules of coding
- Domain centric and layered architectures
- Software quality and technical debt
- Testing strategy, concepts and terminology
- DevOps culture and practices, CI & CD automation
- Agility values, principles and practices
- Things that are overlapping between Agility, DevOps and Craftsmanship
So it took quite some time of me to put pieces of puzzle together. Yet I was sure of one thing. The craftsmanship track was the good one.
Later I ended the story at Wemanity. The role I played was too much demanding. I liked training and mentoring people, but I had also other operational and delivery matters to drive at the same, while coaching teams on client’s site. No more.
Let’s get back to the DDD.

DDD
Up to 2019, I have had heard about DDD, read of course some materials, like the blue book (not finished reading yet), then red book (also not finished reading), then the DDD distilled (easier to digest), while going through many articles on the web. It’s truly a long way and it has been hard, really hard, to progress as a solitary worm. I had the same feeling back then in 2013 when I first discover the Clean Code, Clean Coder and Software Craftsmanship books. Trying to learn things and progress alone is really lonely, and the path is with a lot of doubt and obstacles. Fortunately I finally found my way. Meetups started to emerge and communities rang my bell. So I started attend public sessions, with no cost unlike conferences.
The DDD Meetup (June 2019)
Over years, in software development, we all have been working on projects in which there is team spirits. How magnificent it is to work in a clean environment, with great teammates and careful managers. I have attended lately to a DDD meetup. I was surprised to witness a new form of meetup. I was in fact a show (reality show). During the whole afternoon, eight actors were playing different roles (business, manager, product owner, architect, developers), showing the reality we are facing every day in IT. Through the show, I have learned many things while living again the reality of having to confront difficulties at multiple levels, from code to managers.
The show
A saleswoman came into the scene and meet the dev team. They discuss about the business needs in a DDD way. And that is called Event Storming. From scene to scene, we discover teams working in silo, having their own domain of business requirements. And worst, teams are not collaborating. Each of them have their own problems, and priorities, with directives from the top. Through out the show we can learn many things, what is DDD and what is mob programming. The idea behind is to being up problems that everyone is facing in the IT world is and suggest the solutions to address them by doing a showcase. It’s probably the best way to make people understand things, rather than explaining with thousands of words.
Why do I talk about the show? Well, three things :
- We all encounter difficulties or problems while trying to build and delivery the software.
- We also need to find solutions to them.
- Solutions may help to ease our work or resolve our problems but we are not sure they are good solutions or they may be very limited
The show clearly demonstrate the way – hard – of being just a labor as developer, QA, DevOps, PO or SM taking part of a team.
I did not learned much from that show, but it triggered many things in my mind. I had to go further.
Further craftsmanship
At that time, I was a craftsmanship coach in an agile transformation program. I was alone, but later four more coaches joined the team. More craftsmen means more discussion and sharing knowledge, igniting interests on topics that I was not aware of. One of them, Dan Magier, and thanks to him I got more interest on DDD. So I learned more profound DDD concepts. By joining force with Laurent Archimede who was later my pair starting in 2021 as Tech Practice Lead, we managed to work with Dan to deliver trainings to people at Wemanity. And I had also the opportunities to attend those training sessions.
- Event Modeling + CQRS + ES — training by Grep & Adam (January 2020)
- DMMF — training by Scott Wlaschin (October 2020)
- Refactoring Technical Debt — training by Michael Feathers (April 2021)
There were also a few more events I attended (I can’t remember all of them). Just to name a few interesting ones :
- Domain Storystorming meetup — by Martin Schimak (March 2020)
- Socrates FR 2022
- Socrates Canaries 2023

Socrates
Socrates communities are well know by crafters. There are many over the world, mostly in Europe. Every year, except during covid era, there a several events happening at multiple countries.
I had attended 2 events until now and I like very much. I really recommend that to anyone interested in following the craftsmanship path.
I know I still have a long way to progress, like it would never end. I’ll just keep up learning new stuffs for upcoming years.
Many thanks for reading this. I hope you enjoy it and find it insightful.
My special thanks to Marco Miller (Montréal) who had put me on the crafts track, to François Lecomte my pair in 2019 who gave me an opportunity to progress, to Laurent Archimede as my pair later in 2021 and last, to Dan Magier (Paris) who added fuel to my curiosity.
I did not expect this, but within about 2 hours I wrote the whole article story. It’s worth a champagne!
My articles
- Hexagonal Architecture
- BDD
- TDD
- (update) latest DDD : Strategic, Tactical, Event Storming, SDES
References
Glossary
- TDD : Test-Driven-Development
- BDD : Behaviour-Driven-Development
- DDD : Domain-Driven-Design






