Speaker: Julien LENORMAND – DevOps Engineer and Software manager @Kaizen Solutions​​

This talk introduces core concepts of software craftsmanship — a mindset focused on continuous improvement, code quality, and collaborative development. Framed like a survival guide, it highlights the habits and values that help developers thrive in the long term.


🧠 A – Continuous learning

  • Stay curious — learn how others solve problems.
  • Read foundational books like The Pragmatic Programmer, De Compagnon à Maître.
  • Software is always evolving; so should your skills
  • Cultivate a growth mindset: master your craft over time, not overnight.

✅ B – Best Practices

  • There’s no universal solution — everything depends on context.
  • Best practices are not recipes — they’re starting points for discussion.
  • Share experiences and make decisions as a team.

🧼 C – Clean Code

  • Ask: Who are you coding for?
    • Not just for machines — for humans who read, maintain, and evolve the code.
  • Clean code is harder, but worth it: it enables understanding and collaboration.
  • Concepts:
    • Code smells
    • WTFs per minute
    • Boy Scout Rule: always leave the code cleaner than you found it.

📐 D – Design Patterns

  • Not mandatory knowledge — but helpful for recognizing and naming problems.
  • Patterns = tools, not solutions.
  • Don’t force them (“putting squares in circles”) — apply when it fits naturally.

🎯 K – KISS (Keep It Simple, Stupid)

  • Strive for simplicity first.
    • Deliver value before adding technical complexity.
    • Simplify again, then only complexify if really needed.
  • Avoid premature optimization — clarity > cleverness.

👥 P – Pair Programming

  • Two brains are better than one:
    • Encourages knowledge sharing, better solutions, fewer mistakes.
    • Increases collective ownership (bus factor ↓).
  • Tools: Dojos, Katas → start small, it’s not always easy at first.

🏗️ S – SOLID Principles

  • Solid foundation for design, but not all are equally useful every time.
  • Hot take: SRP (Single Responsibility Principle) and DIP (Dependency Inversion Principle) are the most valuable.
  • Use them to clarify code, not over-engineer it.

🧪 T – Test Driven Development (TDD)

  • Not a silver bullet, but a powerful mindset and tool:
    • Forces clear thinking about design.
    • Helps ensure you have a safety net of tests.
    • Enables small steps and fast feedback loops.
    • Encourages better code documentation through tests.
  • TDD takes practice, failure, and learning — it’s a discipline.

🔁 R – Refactoring

  • Essential for adapting to change.
  • Helps keep control over the codebase.
  • Works best in symbiosis with tests — refactor with confidence.
  • Refactoring is how we prepare the code for the future.

💎 V – Values

  • Software Craft = embracing values, not just techniques:
    • Pride in well-crafted software
    • Constant learning
    • Raising the bar for ourselves and others
    • Helping teammates grow
  • Reference: Software Craftsmanship Manifesto
  • Book recommendation: Software Craft @ Dunod

Conclusion

  • Craftsmanship is about more than clean code — it’s about mindset, collaboration, and values.
  • It’s not perfection — it’s progress, improvement, and intent.
  • Every practice has context; adopt what works, question what doesn’t.
  • As developers, we don’t just write code — we shape the product and the team.