CodeCrafts 2024
Table of Contents
Conference Report #
On May 16, 2024 I visited CodeCrafts 2024 in Vienna. The event was hosted by SQUER and took place at EXPEDITHALLE Wien (Anker Brot Fabrik area). It was the third iteration of CodeCrafts, and you could feel that it has grown up: bigger venue, more people, and a more “conference-like” flow.
For me this had two sides. On the positive side, it was easier to meet many new people and to see that the local community is getting stronger. On the negative side, the atmosphere felt less intimate than in earlier years. Still, the overall quality was high, and the program kept the same spirit: stay humble, take software seriously, and think in systems (often with a Domain-Driven Design mindset, even when DDD was not mentioned directly).
Venue and vibe #
EXPEDITHALLE is large, and the bigger stage worked well for visibility and sound. But with more attendees, conversations became a bit more “short and fast”. If you came mainly for deep hallway track discussions, you had to work harder to find quiet corners and longer chats.
What I liked: the conference still felt community-driven. People were open, and the talks were not marketing pitches. Many sessions connected architecture decisions with organizational reality, which is where most “clean diagrams” get challenged.
Talk highlights and my notes #
Nothing Matters Except the Experience — Jürgen Appelo #
This talk was a reminder that product work is not just shipping output, but improving outcomes for real people. I liked the framing around business agility: continuously experimenting with better user experiences while reducing risk and increasing the pace of change.
One quote I wrote down was from the Scrum Guide about the Increment being usable and additive. It sounds basic, but it is a good test: if an increment is not usable, it is hard to claim it creates value.
My main takeaway: measure progress in experience and learning, not in “we delivered X tickets”.
Making impact with your craft with sociotechnical design — Xin Yao #
This session connected software architecture with the human side of organizations. The part that stayed with me was the idea of a “knowledge network”: even after many reorganizations, it is often the same people you need to know to get things done. Org charts change, but informal networks persist.
Sociotechnical design was described as a participatory co-design approach to optimize technical systems and human systems together, so both users and teams can thrive.
My main takeaway: if you want impact, you must design the system around teams and communication, not only around code structure.
Architecting for Scale — David Leitner #
There was also a warning: highly autonomous teams can create silos and local optimization. Autonomy helps, but only if boundaries are clear and the system is modular enough.
Summary in one line (also from my notes): modularisation is key, and if done right, distribution on top enables autonomous teams.
Architecture Modernization: Aligning software, strategy, and structure — Nick Tune #
This was one of the most actionable talks for companies with legacy systems. The core message: modernization should turn architecture from a competitive disadvantage into a competitive advantage. But you should not modernize everything just because it is old.
A strong warning was about “feature parity rewrites”: rewriting the old system in new technology and rebuilding everything 1:1 modernizes parts that are not worth modernizing, making the effort expensive and slow. The talk also referenced the common observation that many features are rarely used, so copying everything is often waste.
I also liked the execution advice: don’t get lost in big up-front planning. Instead, aim to deliver the first slice of modernization within 3–6 months, and work on the big picture in parallel. That feels realistic and helps maintain trust.
My main takeaway: modernization is a product strategy, not a technical project.
Innovation Enabled Value Driven Software Evolution — Dave Thomas #
Dave Thomas spoke about value and flow. I noted concepts like value stream mapping and the need for tangible, measurable goals. The idea of proving value step by step (POC, proof of scale, and so on) fits well with reducing risk and avoiding long “big bet” programs.
My main takeaway: if you cannot describe the value clearly and measure it, the system will drift into complexity without benefit.
How to Prioritize Platform Product Decisions — Cassidy Ann Coy #
This talk helped explain a common platform problem: platform teams often do not “generate revenue” directly, so prioritization becomes political. The framing of a digital platform as an internal product (APIs, tools, services, knowledge, support) was useful. It is not “infrastructure”, it is a product that enables autonomous teams to deliver faster with less coordination.
My main takeaway: platform work needs product thinking, clear customers (internal), and clear success metrics.
Reshaping Leadership in the Age of AI — Katja Piroué & Julian Tandler #
This session focused on leadership and how AI changes the pace and expectations. My notes are shorter here, but the topic connected well with the rest of the day: tools change quickly, but organizations need leadership that supports learning, experimentation, and clarity.
My main takeaway: AI increases speed, which makes alignment and good decision-making even more important.
Iconoclasm — Ted Neward #
Ted Neward delivered a provocative message about automation. One line I wrote down: automation threatens programmers more than outsourcing ever could, because it enables less-skilled people to do work that used to require specialists. He also mentioned that this is not unique to software—many professions face similar pressure.
My main takeaway: the response should not be fear, but growing your skills toward problem framing, architecture, and understanding real needs (things automation struggles with).
Overall themes I noticed #
- Architecture and organization are inseparable (team boundaries, communication paths, and system design influence each other).
- Modernization and scaling are mainly about reducing coordination cost and risk.
- Product value and user experience are the real north star; delivery is a means, not the goal.
- The DDD-ish mindset is still present: clear domains, good boundaries, and language that matches the business.
Final thoughts #
Even with the less intimate feeling of a bigger venue, CodeCrafts 2024 was a good conference for engineers who care about building software in the real world: with teams, constraints, legacy systems, and changing priorities. I left with practical ideas (deliver modernization slices in months, not years; measure hops in key journeys), but also with a reminder that our job is not only code—it is enabling better outcomes for users and for the people building the system.