<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Writing - RJJ Software Ltd</title><link>https://rjj-software.co.uk/blog/</link><description>Essays on technology leadership, AI adoption, architecture and developer experience, published continuously since 2019.</description><language>en-gb</language><copyright>Copyright 2026 RJJ Software Ltd</copyright><ttl>60</ttl><lastBuildDate>Fri, 07 Aug 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://rjj-software.co.uk/blog/index.xml" rel="self" type="application/rss+xml"/><item><title>Make Time: Why Focus Is an Energy Problem, Not a Discipline Problem</title><link>https://rjj-software.co.uk/blog/continual-professional-development/make-time-why-focus-is-an-energy-problem-not-a-discipline-problem/</link><pubDate>Fri, 07 Aug 2026 00:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/make-time-why-focus-is-an-energy-problem-not-a-discipline-problem/</guid><description>Focus is not a discipline problem. Ten lessons from Jake Knapp and John Zeratsky&amp;rsquo;s Make Time on why attention follows energy and design, for developers and the leaders who manage them.</description></item><item><title>Stop Vibe Coding: The Foundations of Agentic Development</title><link>https://rjj-software.co.uk/blog/agentic-development-foundations/</link><pubDate>Fri, 31 Jul 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/agentic-development-foundations/</guid><description>Agentic development isn't vibe coding. The CLAUDE.md foundation I use across four years of agent-assisted engineering, with a 75% DORA improvement at Ligentia.</description></item><item><title>Learning to Think Again: Rethinking Lessons from Adam Grant for Technical Leaders</title><link>https://rjj-software.co.uk/blog/continual-professional-development/learning-to-think-again-rethinking-lessons-from-adam-grant-for-technical-leaders/</link><pubDate>Fri, 24 Jul 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/learning-to-think-again-rethinking-lessons-from-adam-grant-for-technical-leaders/</guid><description>Adam Grant's Think Again makes the case that rethinking is a skill, not a personality trait. Ten quotes from the book, and what they mean for technical leaders.</description></item><item><title>"Just Throw AI At It" Is Not a Strategy</title><link>https://rjj-software.co.uk/blog/just-throw-ai-at-it-is-not-a-strategy/</link><pubDate>Fri, 17 Jul 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/just-throw-ai-at-it-is-not-a-strategy/</guid><description>An open sourced AI screener scored the same CV anywhere from 66 to 99. Why throwing AI at a problem without thinking it through fails, and the jobs that still need a human in the loop.</description></item><item><title>The Willingness to Have Your Mind Changed: Listening Lessons for Tech Leaders</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-willingness-to-have-your-mind-changed-listening-lessons-for-tech-leaders/</link><pubDate>Fri, 10 Jul 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-willingness-to-have-your-mind-changed-listening-lessons-for-tech-leaders/</guid><description>Oscar Trimboli's How to Listen reframes listening as a deliberate, learnable skill. Ten quotes from the book, and what they mean for technical leaders.</description></item><item><title>From Author to Editor-in-Chief: The Shift That's Already Here</title><link>https://rjj-software.co.uk/blog/from-author-to-editor-in-chief-the-shift-thats-already-here/</link><pubDate>Fri, 03 Jul 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/from-author-to-editor-in-chief-the-shift-thats-already-here/</guid><description>Aneesh Raman's Three Buckets framework, from Think Fast Talk Smart episode 280, maps almost exactly onto the author-to-editor-in-chief shift I described in a recent case study. When people outside software start describing the same transition, it is worth paying attention.</description></item><item><title>The Secret Language of Great Leadership: Lessons from &amp;quot;Supercommunicators&amp;quot; for Tech Leaders</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-secret-language-of-great-leadership-lessons-from-supercommunicators-for-tech-leaders/</link><pubDate>Fri, 26 Jun 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-secret-language-of-great-leadership-lessons-from-supercommunicators-for-tech-leaders/</guid><description>Charles Duhigg's Supercommunicators reveals that great communicators are not born that way; they practise a learnable set of skills. This post draws on ten key quotes from the book to explore why those skills are the foundation of effective tech leadership.</description></item><item><title>Building Psychological Safety in Your Development Team: Practical Strategies for Leaders</title><link>https://rjj-software.co.uk/blog/building-psychological-safety-in-your-development-team/</link><pubDate>Fri, 19 Jun 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/building-psychological-safety-in-your-development-team/</guid><description>Practical strategies for building and rebuilding psychological safety in development teams. From blameless culture to structured one-to-ones, here is what the work actually looks like.</description></item><item><title>Start With Why: The One Thing AI Can't Generate</title><link>https://rjj-software.co.uk/blog/continual-professional-development/start-with-why-the-one-thing-ai-cant-generate/</link><pubDate>Fri, 12 Jun 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/start-with-why-the-one-thing-ai-cant-generate/</guid><description>Simon Sinek's Start With Why applied to software engineering and digital leadership. Why purpose matters more than ever when AI handles the code.</description></item><item><title>When Your AI Chatbot Becomes Someone Else's Free Compute: The Pepper Lesson</title><link>https://rjj-software.co.uk/blog/when-your-ai-chatbot-becomes-someone-elses-free-compute-the-pepper-lesson/</link><pubDate>Fri, 05 Jun 2026 07:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/when-your-ai-chatbot-becomes-someone-elses-free-compute-the-pepper-lesson/</guid><description>Chipotle's Pepper chatbot was repurposed as a free coding assistant. The patch is in; the pattern is not. A short note on Denial of Wallet and AI governance.</description></item><item><title>Stop Chasing the AI Moonshot: The Case for Small, Deliberate Wins</title><link>https://rjj-software.co.uk/blog/stop-chasing-the-ai-moonshot-the-case-for-small-deliberate-wins/</link><pubDate>Fri, 05 Jun 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/stop-chasing-the-ai-moonshot-the-case-for-small-deliberate-wins/</guid><description>Why the biggest gains from AI adoption come from small, deliberate wins rather than big-bang strategy. A fractional CTO's case for the Kaizen approach to AI.</description></item><item><title>Rest: Why Stepping Away From the Screen Is Part of the Work</title><link>https://rjj-software.co.uk/blog/continual-professional-development/rest-why-stepping-away-from-the-screen-is-part-of-the-work/</link><pubDate>Fri, 29 May 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/rest-why-stepping-away-from-the-screen-is-part-of-the-work/</guid><description>Alex Soojung-Kim Pang's Rest makes the case, backed by neuroscience and history, that rest is not the opposite of work but its partner. Lessons for software teams, engineering leaders, and anyone who has ever solved a hard problem in the shower.</description></item><item><title>The Skill Nobody Taught You: Emotional Intelligence for Tech Team Leaders</title><link>https://rjj-software.co.uk/blog/the-skill-nobody-taught-you-emotional-intelligence-for-tech-team-leaders/</link><pubDate>Fri, 22 May 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/the-skill-nobody-taught-you-emotional-intelligence-for-tech-team-leaders/</guid><description>Emotional intelligence is the toolkit that makes psychological safety possible. A practical guide for tech leaders on self-awareness, regulation, empathy, and communication.</description></item><item><title>Thinking in Systems: Why the Job Was Never the Typing</title><link>https://rjj-software.co.uk/blog/continual-professional-development/thinking-in-systems-why-the-job-was-never-the-typing/</link><pubDate>Fri, 15 May 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/thinking-in-systems-why-the-job-was-never-the-typing/</guid><description>Donella Meadows' systems thinking applied to software engineering. Why understanding systems matters more than writing code, especially in the age of AI.</description></item><item><title>Your Team's Silence Is Telling You Something: Psychological Safety in Development Teams</title><link>https://rjj-software.co.uk/blog/your-teams-silence-is-telling-you-something-psychological-safety-in-development-teams/</link><pubDate>Fri, 08 May 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/your-teams-silence-is-telling-you-something-psychological-safety-in-development-teams/</guid><description>Warning signs that your development team lacks psychological safety, and why the silence in your standups and retros is costing you more than you think. Part 1 of a series on building healthier engineering cultures.</description></item><item><title>Fundamentals of Software Architecture: Lessons for Modern Tech Teams</title><link>https://rjj-software.co.uk/blog/continual-professional-development/fundamentals-of-software-architecture-lessons-for-modern-tech-teams/</link><pubDate>Fri, 01 May 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/fundamentals-of-software-architecture-lessons-for-modern-tech-teams/</guid><description>Key lessons from Richards and Ford's Fundamentals of Software Architecture, from trade-off thinking to escaping memetic bubbles. A review for tech leaders navigating decisions under uncertainty.</description></item><item><title>Mechanical Sympathy: The Case for Giving Engineers Time to Optimise</title><link>https://rjj-software.co.uk/blog/mechanical-sympathy-the-case-for-giving-engineers-time-to-optimise/</link><pubDate>Fri, 24 Apr 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/mechanical-sympathy-the-case-for-giving-engineers-time-to-optimise/</guid><description>Most engineering teams care about performance. Most sprint processes don't reward it. This post makes the business case for giving engineers dedicated time to optimise, and explains what that time is actually worth.</description></item><item><title>The Checklist Manifesto: Lessons in Managing Complexity for Modern Tech Teams</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-checklist-manifesto-lessons-in-managing-complexity-for-modern-tech-teams/</link><pubDate>Fri, 17 Apr 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-checklist-manifesto-lessons-in-managing-complexity-for-modern-tech-teams/</guid><description>This blog post explores key lessons from Atul Gawande's &amp;quot;The Checklist Manifesto&amp;quot;, applying its insights to the challenges of managing complexity in modern software development. It makes the case that checklists are not a sign of weakness but a powerful tool for expert professionals; freeing mental capacity for the hard problems while ensuring the critical steps are never missed.</description></item><item><title>Too Many Waiters, Not Enough Cooks: Practical Steps For Change</title><link>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-practical-steps-for-change/</link><pubDate>Fri, 10 Apr 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-practical-steps-for-change/</guid><description>The final part of our series on management overhead in software teams. We provide a practical roadmap for addressing excessive management overhead, restructuring teams for autonomy, and implementing change that improves delivery capability.</description></item><item><title>Kill It With Fire: Lessons from Legacy Systems for Modern Leaders</title><link>https://rjj-software.co.uk/blog/continual-professional-development/kill-it-with-fire-lessons-from-legacy-systems-for-modern-leaders/</link><pubDate>Fri, 03 Apr 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/kill-it-with-fire-lessons-from-legacy-systems-for-modern-leaders/</guid><description>This blog post explores key lessons from Marianne Bellotti’s &amp;quot;Kill It With Fire&amp;quot;, applying its insights to the challenges of managing legacy systems in modern technology environments. It emphasizes the importance of people and communication alongside technical expertise, advocating for pragmatic modernisation strategies focused on delivering value to users. The post offers guidance for leaders and decision-makers on prioritizing stability, understanding existing systems, and avoiding the trap of chasing the latest technology without clear business justification.</description></item><item><title>Too Many Waiters, Not Enough Cooks: Finding The Right Balance</title><link>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-finding-the-right-balance/</link><pubDate>Fri, 27 Mar 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-finding-the-right-balance/</guid><description>Part 2 of our series on management overhead in software teams. We explore what healthy team structures look like, when you genuinely need more management presence, and provide a practical framework for assessing your organisation&amp;rsquo;s current state.</description></item><item><title>Securing Your Legacy and Future in Software Development: More Lessons from &amp;quot;Alice &amp; Bob Learn Secure Coding&amp;quot;</title><link>https://rjj-software.co.uk/blog/continual-professional-development/securing-your-legacy-and-future-in-software-development-more-lessons-from-alice--bob-learn-secure-coding/</link><pubDate>Fri, 20 Mar 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/securing-your-legacy-and-future-in-software-development-more-lessons-from-alice--bob-learn-secure-coding/</guid><description>Explore more essential security principles for software development by drawing wisdom from Tanya Janca&amp;rsquo;s book, &amp;lsquo;Alice &amp;amp; Bob Learn Secure Coding.&amp;rsquo; This post emphasises that software security isn&amp;rsquo;t an afterthought but a core component of the development lifecycle. Key takeaways include prioritising security from the start, investing in developer security training, proactively addressing legacy application vulnerabilities, maintaining security post-release, fostering a culture of lifelong learning, and promoting knowledge sharing within teams. Implementing these strategies significantly reduces vulnerabilities, improves software quality, and protects against costly breaches. Building a secure software development process requires a holistic approach. By integrating security into every stage, from planning to deployment and ongoing maintenance, organisations can create more resilient and trustworthy applications. This post provides actionable insights for leaders and teams seeking to strengthen their security posture.</description></item><item><title>Too Many Waiters, Not Enough Cooks: Why Your Software Team Might Be Manager-Heavy</title><link>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-why-your-software-team-might-be-manager-heavy/</link><pubDate>Fri, 13 Mar 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/too-many-waiters-not-enough-cooks-why-your-software-team-might-be-manager-heavy/</guid><description>The first in a three-part series exploring management-heavy software teams. We examine the pattern, its hidden costs, and why smart organisations struggle with the balance between technical implementers and decision makers.</description></item><item><title>Building a Secure Foundation: Lessons from &amp;quot;Alice &amp; Bob Learn Secure Coding&amp;quot; for Modern Tech Teams</title><link>https://rjj-software.co.uk/blog/continual-professional-development/building-a-secure-foundation-lessons-from-alice-and-bob-learn-secure-coding-for-modern-tech-teams/</link><pubDate>Fri, 06 Mar 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/building-a-secure-foundation-lessons-from-alice-and-bob-learn-secure-coding-for-modern-tech-teams/</guid><description>This post explores crucial application security principles from Tanya Janca&amp;rsquo;s &amp;lsquo;Alice &amp;amp; Bob Learn Secure Coding.&amp;rsquo;&amp;rsquo; We cover topics like secure defaults, prioritizing security investments, user-friendly security, technical debt management, backend validation, and the power of focused security learning. Learn how to build a resilient application security strategy and protect your users</description></item><item><title>Beyond Verification: Building Teams That Use AI Responsibly</title><link>https://rjj-software.co.uk/blog/the-ai-amplification-paradox-part-2/</link><pubDate>Fri, 27 Feb 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/the-ai-amplification-paradox-part-2/</guid><description>AI tools aren&amp;rsquo;t going away, nor should they. But how do we ensure they enhance rather than replace understanding? This post explores practical strategies for CTOs, technical leads, and engineering teams to harness AI responsibly whilst building stronger engineers.</description></item><item><title>Level Up Your Leadership: Key Insights from 'Emotional Intelligence Habits' for the Modern Tech Workplace</title><link>https://rjj-software.co.uk/blog/continual-professional-development/level-up-your-leadership-key-insights-from-emotional-intelligence-habits-for-the-modern-tech-workplace/</link><pubDate>Fri, 20 Feb 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/level-up-your-leadership-key-insights-from-emotional-intelligence-habits-for-the-modern-tech-workplace/</guid><description>This post highlights key insights from Travis Bradberry's 'Emotional Intelligence Habits' and their relevance to tech leadership. It argues that EQ is crucial for success in the demanding tech world, impacting team performance and organizational health. The post breaks down eight core principles: owning emotions, controlling reactions, cultivating self-acceptance, practising gratitude, embracing 'good enough,'' active listening, celebrating small wins, and responding with kindness. Each principle is explained with practical examples and actionable takeaways for tech leaders. The post emphasizes that developing EQ isn't just about personal growth, but a strategic advantage for building resilient, collaborative, and high-performing teams.</description></item><item><title>The Amplification Paradox: When AI Tools Amplify the Wrong Things</title><link>https://rjj-software.co.uk/blog/the-ai-amplification-paradox-part-1/</link><pubDate>Fri, 13 Feb 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/the-ai-amplification-paradox-part-1/</guid><description>Generative AI can amplify great engineers, but what happens when it amplifies engineers who lack the foundational understanding to verify what they&amp;rsquo;re shipping? We explore the rise of AI slop in software development and what it means for code quality.</description></item><item><title>Finding Strength in Vulnerability: Lessons for Tech Leaders from 'Rising Strong'</title><link>https://rjj-software.co.uk/blog/continual-professional-development/finding-strength-in-vulnerability-lessons-for-tech-leaders-from-rising-strong/</link><pubDate>Fri, 06 Feb 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/finding-strength-in-vulnerability-lessons-for-tech-leaders-from-rising-strong/</guid><description>This blog post explores the relevance of Dr. Brené Brown's 'Rising Strong' to the modern workplace, particularly for those leading software engineers and technology teams. Drawing on key quotes from the book, the post highlights the importance of avoiding false dichotomies, the power of experiential learning, managing emotions effectively, setting healthy boundaries, and embracing vulnerability as a strength. These concepts are presented as crucial for fostering resilient, innovative, and fulfilling work environments within the technology sector. The post underscores the role of leadership in modelling these behaviours and creating psychologically safe spaces for teams to thrive.</description></item><item><title>The Engineer Title: When Software Teams Aren't Actually Engineering</title><link>https://rjj-software.co.uk/blog/the-engineer-title-when-software-teams-arent-actually-engineering/</link><pubDate>Fri, 30 Jan 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/the-engineer-title-when-software-teams-arent-actually-engineering/</guid><description>- This blog post argues that many organisations misuse the "software engineer" title for developers who don't practice actual software engineering. Drawing from a decade of consultancy experience, the author contends that true software engineers demonstrate systematic approaches, quality focus, and professional practices, while many "engineers" simply code without proper planning, testing, or documentation.
- The post distinguishes between developers (who write functional code) and engineers (who apply rigorous methodologies), using quotes from The Modern .NET Show to support the argument. It identifies specific red flags indicating when teams aren't truly engineering, including absent automated testing, poor version control practices, and inadequate planning.
- The business case is clear: poor engineering practices cost organisations 40-60% more time on maintenance, create exponential technical debt, and reduce development velocity. Conversely, proper engineering practices deliver predictable timelines, sustainable development, and lower long-term costs.</description></item><item><title>Leading with Empathy: Lessons from &amp;quot;Leaders Eat Last&amp;quot; for the Modern Workplace</title><link>https://rjj-software.co.uk/blog/continual-professional-development/leading-with-empathy-lessons-from-leaders-eat-last-for-the-modern-workplace/</link><pubDate>Fri, 23 Jan 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/leading-with-empathy-lessons-from-leaders-eat-last-for-the-modern-workplace/</guid><description>- This blog post explores the core principles of Simon Sinek's "Leaders Eat Last" and how they are particularly relevant to leaders and teams in the technology industry. It argues that a leader's primary responsibility is to prioritize the well-being of their team, fostering a "Circle of Safety" built on empathy, trust, and mutual support.
- The post highlights the importance of psychological safety for innovation, collaboration, and high performance. It emphasizes that a supportive environment, where individuals feel valued and safe to take risks, is crucial for retaining talent and achieving organizational success. Ultimately, the article advocates for a leadership style centered on service and empowerment, recognizing that a strong team culture is the foundation for adaptability, resilience, and innovation in the rapidly evolving tech landscape.</description></item><item><title>Stop Treating Pentests Like Final Exams: Why Security Can't Be Your Last Step</title><link>https://rjj-software.co.uk/blog/stop-treating-pentests-like-final-exams-why-security-cant-be-your-last-step/</link><pubDate>Fri, 16 Jan 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/stop-treating-pentests-like-final-exams-why-security-cant-be-your-last-step/</guid><description>- This blog post challenges the common practice of treating penetration testing as a final security checkpoint before release. It argues that discovering critical vulnerabilities during a pentest represents a fundamental failure in the development process, not a success of the testing process.
- The post introduces the concept of building security into every phase of the Software Development Life Cycle (SDLC), drawing on insights from security expert Tanya Janca. It provides specific security activities for each development phase: threat modeling during design, secure coding practices during development, automated scanning during builds, continuous testing, and runtime protection in production.
- For teams without dedicated security resources, the article details how to use the same tools that professional pentesters use (OWASP ZAP, Burp Suite, and SemGrep) and integrate them into CI/CD pipelines for continuous security testing. It includes practical code examples and automation configurations.
- The post provides a realistic 8-week preparation timeline for external pentests, emphasizing that these should confirm security practices are working, not discover basic vulnerabilities. It presents a clear business case comparing the costs of last-minute security fixes (£265,000+) versus continuous security practices (£45,000 annually).
- Building on previous articles about SBOMs and Attestations, the post positions penetration testing as part of a comprehensive security strategy. It concludes with a month-by-month roadmap for organizations to evolve from reactive security testing to proactive security integration, making external pentests a validation exercise rather than a crisis event.</description></item><item><title>Leading with Heart and Mind: Lessons from 'Dare to Lead' for the Modern Workplace</title><link>https://rjj-software.co.uk/blog/continual-professional-development/leading-with-heart-and-mind-lessons-from-dare-to-lead-for-the-modern-workplace/</link><pubDate>Fri, 09 Jan 2026 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/leading-with-heart-and-mind-lessons-from-dare-to-lead-for-the-modern-workplace/</guid><description>This blog post explores the relevance of Brené Brown's &amp;quot;Dare to Lead&amp;quot; for leaders in the technology sector. Drawing on key quotes from the book, it highlights the importance of vulnerability, empathy, and connection in fostering high-performing teams. The post emphasizes how these leadership principles can be applied to the unique challenges of software development, including managing burnout, encouraging innovation, and navigating complex projects. As a technology consultant, I share my experience applying these lessons to help organizations build stronger, more resilient teams. The post concludes with a call to action, inviting readers to explore my strategic technology consultation services.</description></item><item><title>From Strength to Strength: 2025 Wrapped</title><link>https://rjj-software.co.uk/blog/from-strength-to-strength-2025-wrapped/</link><pubDate>Wed, 31 Dec 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/from-strength-to-strength-2025-wrapped/</guid><description>As we close out 2025, we&amp;rsquo;re reflecting on a year that exceeded our expectations. From international trade missions and three prestigious awards to surpassing 1.6 million downloads of OwaspHeaders.Core and The Modern .NET Show reaching 1.25 million downloads, this year has been one of remarkable growth. We&amp;rsquo;ve worked with clients across seven industries, published 48 blog posts, and continued our commitment to the developer community. Join us as we look back on what made 2025 such a special year for RJJ Software.</description></item><item><title>When Agile Isn't Agile: How DORA Metrics Reveal What's Really Broken</title><link>https://rjj-software.co.uk/blog/when-agile-isnt-agile-how-dora-metrics-reveal-whats-really-broken/</link><pubDate>Fri, 19 Dec 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/when-agile-isnt-agile-how-dora-metrics-reveal-whats-really-broken/</guid><description>- This blog post addresses a common frustration among development teams: following all Agile ceremonies perfectly while still struggling to deliver value quickly. It reveals how many "Agile" teams are actually practising mini-waterfalls with two-week sprints, focusing on velocity theatre rather than genuine agility.
- The post introduces DORA metrics (Deployment Frequency, Lead Time for Changes, Time to Restore Service, and Change Failure Rate) as the reality check that exposes what's actually broken in your Agile process. Unlike story points or velocity, these metrics can't be gamed and directly measure your ability to deliver value to customers.
- Through specific examples, the article shows how DORA metrics reveal common antipatterns like "Sprint Waterfall" (batching work into sprint-sized chunks), "Fear of Production" (extensive testing that doesn't prevent failures), and "Fake Definition of Done" (marking work complete when it's not in production).
- The post provides a practical, month-by-month approach to improvement: establishing baselines, identifying constraints, targeting specific metrics, and adjusting Agile practices based on data rather than guesswork. It includes code examples, industry benchmarks, and a real client transformation showing 9x improvement in delivery speed.
- Building on the previous article about engineering dashboards, it demonstrates how DORA metrics serve dual purposes: proving value to leadership while driving internal process improvements. The core message: stop shooting in the dark with process changes. Use DORA metrics to build genuine agility based on data, not ceremonies.</description></item><item><title>Playing the Infinite Game: A New Approach to Technology Leadership</title><link>https://rjj-software.co.uk/blog/continual-professional-development/playing-the-infinite-game-a-new-approach-to-technology-leadership/</link><pubDate>Fri, 12 Dec 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/playing-the-infinite-game-a-new-approach-to-technology-leadership/</guid><description>A CPD review of Simon Sinek's The Infinite Game, focused on what changes for technology leaders when the game has no finish line: Circle of Safety, worthy rivals, leadership as enabling rather than directing, and what to invest in when the timescale is longer than the current quarter.</description></item><item><title>Excluding Auto-Generated Code from .NET 10 Coverage Reports</title><link>https://rjj-software.co.uk/blog/excluding-auto-generated-code-from-net-10-coverage-reports/</link><pubDate>Wed, 10 Dec 2025 11:30:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/excluding-auto-generated-code-from-net-10-coverage-reports/</guid><description>A practical guide to excluding .NET 10's auto-generated code from Coverlet code coverage reports using Azure DevOps pipelines, with configuration examples in both YAML and XML formats</description></item><item><title>Attestations: The Missing Link Between Your Code and Production Trust</title><link>https://rjj-software.co.uk/blog/attestations-the-missing-link-between-your-code-and-production-trust/</link><pubDate>Fri, 05 Dec 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/attestations-the-missing-link-between-your-code-and-production-trust/</guid><description>- This blog post explores attestations as the critical next step after implementing SBOMs in enterprise software development. While SBOMs document what components are in your software, attestations provide cryptographic proof that your software hasn't been tampered with during the build and deployment process.
- The post explains how attestations create a verifiable chain of trust from source code to production, preventing supply chain attacks where malicious code could be injected during the build process. It details what attestations can prove (including build provenance, dependency verification, security scan results, and test execution), and provides real-world scenarios where the absence of attestations has led to security breaches.
- Written for enterprise developers and technical leaders, the post offers a practical, progressive implementation approach starting with basic build attestations and advancing through SBOM attestations, vulnerability attestations, and policy-based attestations. Each level includes code examples and realistic timelines.</description></item><item><title>Practical Wisdom for the Modern Developer: Final Lessons from &amp;quot;The Rules of Programming&amp;quot;</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-5-practical-wisdom-for-the-modern-developer/</link><pubDate>Fri, 28 Nov 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-5-practical-wisdom-for-the-modern-developer/</guid><description>This blog post explores key lessons from Chris Zimmerman's 'The Rules of Programming,'' focusing on its relevance to today's technology landscape. Drawing on insightful quotes from the book, I discuss the importance of writing readable code, the value of thoughtful comments, and the need for pragmatic problem-solving. The post emphasizes how these principles can improve developer experience, boost team productivity, and ultimately lead to more successful technology projects. As a technology consultant, I regularly apply these lessons to help organizations optimize their development processes and build more sustainable software.</description></item><item><title>CVE-2025-55315: Understanding 'Funky Chunks' and Why Your Organisation Needs to Act Now</title><link>https://rjj-software.co.uk/blog/cve-2025-55315-understanding-funky-chunks-and-why-your-organisation-needs-to-act-now/</link><pubDate>Fri, 21 Nov 2025 12:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/cve-2025-55315-understanding-funky-chunks-and-why-your-organisation-needs-to-act-now/</guid><description>A critical HTTP request smuggling vulnerability affecting web frameworks globally requires immediate attention from decision makers. With a CVSS score of 9.9, CVE-2025-55315 exploits fundamental features of HTTP/1.1 to bypass security controls, potentially enabling privilege escalation, data theft, and unauthorised access to protected resources.</description></item><item><title>From 'Trust Us' to 'Look at This': Building Engineering Dashboards That Boards Actually Understand</title><link>https://rjj-software.co.uk/blog/from-trust-us-to-look-at-this-building-engineering-dashboards-that-boards-actually-understand/</link><pubDate>Fri, 21 Nov 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/from-trust-us-to-look-at-this-building-engineering-dashboards-that-boards-actually-understand/</guid><description>Your Agile process is working beautifully, but the board keeps asking &amp;lsquo;How do we know?&amp;rsquo; Here&amp;rsquo;s how to build dashboards that translate engineering excellence into executive confidence.</description></item><item><title>Finding Simplicity in Complexity: Lessons from &amp;quot;The Rules of Programming&amp;quot;</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-4-finding-simplicity-in-complexity/</link><pubDate>Fri, 14 Nov 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-4-finding-simplicity-in-complexity/</guid><description>This blog post explores key principles from Chris Zimmerman's &amp;quot;The Rules of Programming,&amp;quot; arguing that simplicity and consistency are paramount for successful software development and high-performing teams. It emphasizes the importance of shared understanding, managing complexity rather than eliminating it, and prioritizing interface simplicity. The post highlights the dangers of stateful code and over-engineering, advocating for functional programming and a focus on clear, maintainable solutions. Ultimately, it underscores the need for team alignment and systematic debugging to create resilient, adaptable software and a more productive development environment. The author, a technology consultant, shares practical takeaways and encourages readers to embrace these principles for improved outcomes.</description></item><item><title>Communities of Practice: Your Secret Weapon for Breaking Silos and Accelerating Learning</title><link>https://rjj-software.co.uk/blog/communities-of-practice-your-secret-weapon-for-breaking-silos-and-accelerating-learning/</link><pubDate>Fri, 07 Nov 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/communities-of-practice-your-secret-weapon-for-breaking-silos-and-accelerating-learning/</guid><description>How a simple Wednesday lunch meeting transformed siloed teams into collaborative problem-solvers and turned &amp;rsquo;that&amp;rsquo;s not possible&amp;rsquo; into &amp;lsquo;we shipped it last week.&amp;rsquo;</description></item><item><title>The Enduring Wisdom of 'The Rules of Programming'</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-3-the-enduring-wisdom/</link><pubDate>Fri, 31 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-3-the-enduring-wisdom/</guid><description>This blog post delves into the enduring relevance of Chris Zimmerman's 'The Rules of Programming' for modern development teams. It highlights key=principles from the book, including the importance of active code reviews, robust error handling, avoiding overly complex functions, and designing for resilience. The post emphasizes the social benefits of code reviews, the pitfalls of neglecting error handling, and the value of writing code that is clear, concise, and maintainable. Ultimately, it advocates for simplicity as a guiding principle in software development and underscores the need to address the challenges posed by legacy code. The author, a technology consultant, offers practical insights on how to apply these principles to improve developer experience and drive better business outcomes.</description></item><item><title>Why 'Upgrade and Pray' Cost My Client 140 Engineering Days (And How to Avoid It)</title><link>https://rjj-software.co.uk/blog/why-upgrade-and-pray-cost-my-client-140-engineering-days-and-how-to-avoid-it/</link><pubDate>Fri, 24 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/why-upgrade-and-pray-cost-my-client-140-engineering-days-and-how-to-avoid-it/</guid><description>A systematic approach to framework upgrades that prevents months of rework and actually improves Developer Experience.</description></item><item><title>Why Your 'Stable' Software Is a Ticking Time Bomb</title><link>https://rjj-software.co.uk/blog/why-your-stable-software-is-a-ticking-time-bomb/</link><pubDate>Fri, 24 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/why-your-stable-software-is-a-ticking-time-bomb/</guid><description>The car maintenance guide to software updates: Why ignoring that blinking dashboard light will leave you stranded at the worst possible moment.</description></item><item><title>Beyond the Buzzwords: More Practical Wisdom from 'The Rules of Programming' for the Modern Workplace</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-2-beyond-the-buzzwords-more-practical-wisdom-for-the-modern-workplace/</link><pubDate>Fri, 17 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-2-beyond-the-buzzwords-more-practical-wisdom-for-the-modern-workplace/</guid><description>This blog post delves into the practical wisdom found within Chris Zimmerman's 'The Rules of Programming,' specifically focusing on its relevance to the modern workplace, particularly for technology professionals. Drawing on key quotes from the book, the post highlights the importance of problem-focused development, resisting premature generalization, and prioritizing code simplicity over premature optimization. It argues that these principles are crucial for building maintainable, adaptable, and ultimately successful software. The post is geared towards team leaders, decision-makers, and technology managers, offering insights from a strategic technology consultant's perspective. It concludes with a call to action, inviting readers to explore how the consultant's services can help their organizations apply these principles and achieve their technology goals.</description></item><item><title>When Your Team Thinks They're Done Learning: A Tech Lead's Guide to Reigniting Growth</title><link>https://rjj-software.co.uk/blog/when-your-team-thinks-theyre-done-learning/</link><pubDate>Fri, 10 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/when-your-team-thinks-theyre-done-learning/</guid><description>Your developers have stopped learning. Not because they can&amp;rsquo;t, but because they won&amp;rsquo;t. Here&amp;rsquo;s how to reignite their curiosity without becoming the &amp;lsquo;mandatory training&amp;rsquo; villain.</description></item><item><title>Simplicity in Code: A Lesson for the Modern Workplace (The Rules of Programming)</title><link>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-1/</link><pubDate>Fri, 03 Oct 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/the-rules-of-programming-1/</guid><description>This blog post delves into the timeless wisdom of Chris Zimmerman's 'The Rules of Programming,' exploring its relevance to the modern technology workplace. It highlights key quotes from the book, illustrating how principles like simplicity, questioning assumptions, and delaying complexity are crucial for building robust, maintainable systems and fostering high-performing teams. The post emphasizes the importance of a minimalist approach to coding, the value of team alignment, and the potential pitfalls of cognitive overload. Ultimately, it argues that a commitment to these principles is essential for navigating the challenges of today's fast-paced technology landscape. As a strategic technology consultant, I share my experience in applying these lessons to help organizations achieve their technology goals.</description></item><item><title>Get Back to the Office Before You're Forced: A Developer's Guide to Strategic RTO</title><link>https://rjj-software.co.uk/blog/get-back-to-the-office-before-youre-forced-a-developers-guide-to-strategic-rto/</link><pubDate>Fri, 26 Sep 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/get-back-to-the-office-before-youre-forced-a-developers-guide-to-strategic-rto/</guid><description>Why smart development teams should embrace hybrid working voluntarily, and how to do it right.</description></item><item><title>Embracing Failure: A Key to Success in the Modern Workplace</title><link>https://rjj-software.co.uk/blog/continual-professional-development/embracing-failure-a-key-to-success-in-the-modern-workplace/</link><pubDate>Fri, 19 Sep 2025 06:00:00 +0000</pubDate><guid>https://rjj-software.co.uk/blog/continual-professional-development/embracing-failure-a-key-to-success-in-the-modern-workplace/</guid><description>A CPD review of Amy C. Edmondson&amp;rsquo;s Right Kind of Wrong, focused on what changes when engineering teams stop treating failure as a person to find and start treating it as a system to understand.</description></item></channel></rss>