Who has responsibility to fix this?
Posted on March 8, 2024 Leave a Comment
I want to take some time today to reflect ahead of International Woman’s Day 2024 (8th March if it’s not marked in your calendar).
Every year we celebrate international woman’s day and we talk about the importance of driving gender diversity in the workforce. Companies everywhere start tweeting about their commitment to equality and we all review stats about how bad the gender pay gap is (across the industry woman currently earn up to 28% less than their male colleagues in the same tech roles).
My question today is who has responsibility to fix this?
I would hope that we would all recognise that our progress is not good enough — today across the tech industry ~26% of tech roles are filled by woman with the percentage much smaller when you consider woman doing technical roles such as those working as engineers. Its all very well and good to say companies need to fix this but the hard truth is that globally only 3% of females say that a career in technology is their first choice.
I ask you Why?
Why is it that only 3% of woman actively want to work in our industry? Its pretty shameful really — imagine organising a party and then realising that only 3% of your friends were interested in attending — I suspect we would all be pretty devasted.
I won’t pretend to know all the answers but I will give my viewpoint which I think will provide some perspective.
In 2017 I had the privilege of attending Apples World Wide Developer Conference in San Jose. Michelle Obama participated in a keynote panel session at the event and spoke in front of the entire 5500 attendees.
Michelle was asked why she thought gender diversity was such a big issue in the tech community. She responded by asking everyone in the audience to stand up; she then asked all of the men to sit down.
Left standing in that huge auditorium were 127 strong, powerful, amazing female engineers. 127 out of 5500. She asked the men in the room if they walked into a room filled with 5,373 woman at a cookery convention how many of us would want to stay and bake a cake?
Now I fancy myself as a great cook. I have all of the skills needed to bake an amazing victoria sponge that Mary Berry would be proud of — but I also know faced with that crowd I would run a mile.
I therefore believe that the only way for us to make real progress creating true gender equality in tech is to go out and buy a mirror and look inwardly upon ourselves and ask what it is about the tech community that creates an environment that many woman don’t find appealing?
This goes way beyond woman by the way. It applies to every minority group; it applies to everyone who is somehow different or doesn’t conform to a stereotype. As a society we like to be able to put people into boxes and we make judgements subconsciously based upon what people look and sound like which inadvertently creates unconscious bias.
I’m gay — I know I don’t fit the stereotype; I’m not particularly camp, or flamboyant or any of the other stereotypes we might associate with the gay community. When I tell someone that I’m gay a surprisingly common response is “Really! I’d never have known.”
I’ve witnessed exactly the same thing happen to some amazingly talented female engineers. It might be subtle — perhaps the first time someone has met a female engineer and upon realising what they do there’s an expression of surprise “Really! I’d never have guessed”. I’ve also witnessed things far more overt where I’ve watched female engineers propose technical solutions and it has been completely overlooked or ignored — as if the viewpoint doesn’t matter or is somehow not relevant to the discussion.
The discrimination here isn’t deliberate; in many instances people don’t even know that they are doing it — its completely unconscious. I guess that’s the nature of unconscious bias.
Think of a famous scientist or inventor ….
I would put money on the vast majority of you immediately thinking of Albert Einstein. Now think of a female scientist or inventor. Takes longer doesn’t it? Florence Nightingale perhaps? Marie Curie? There are hundreds of others — unconsciously we succumb to our own bias’s and we are all guilty of it.
Try something harder — think of a female CTO? Did you know that in the FTSE100 only 15% of CTO’s are woman and only 2 companies have both a female CEO and CDTO (one of which is GSK by the way).
So returning to my point — what it is about the tech community that creates an environment that many woman do not want to work in? In my view its our lack of awareness about the need to actively create a welcoming and inclusive environment. This goes beyond just being aware of our own bias’s — it requires us to actively call unconscious bias out. For me we need to move to a position where not being racist isn’t good enough — we need to be actively-anti-racist. Not being homophobic isn’t good enough — we need to be actively anti-homophobic. It means not only not being sexist but being actively anti-sexist.
Sadly within tech the majority of roles today are currently filled by men and one of the reasons for that is that there is a huge amount of unconscious bias in our community. I’m not saying it is the only reason; but it is a contributing factor. Forbes reported in 2022 that of workers who reported experiencing workplace bias 33% were likely to feel alienated, 34% were likely to withhold ideas and 80% would not refer people to the employer.
Alarmingly in 2023 a UN report had concluded that 9 out of 10 woman had experienced unconscious bias in the work place.
So what can we do?
This international woman’s day I ask you join me in making a pledge to speak out. When I see unconscious bias I will call it out; I will pro-actively champion equality in the workplace and I will go out of my way to make my workplace somewhere that everyone feels comfortable being their true and authentic selves.
More than this — this international woman’s day I commit to proactively being an ally for all of the amazing woman working in tech at Haleon and I will actively seek ways to help build and drive our female tech community across the organisation and beyond.

To answer my question who has responsibility to fix this? The answer very simply is that WE DO — all of us who work in the Tech Industry! And especially those of us who make up the 74% of men who work in tech. This international woman’s day what are you going to do to help make a difference?
Orwell’s 1984 in the Modern Age: Navigating the Moral Dilemmas of Technological Progress
Posted on August 8, 2023 Leave a Comment

George Orwell’s dystopian novel, 1984, painted a haunting picture of a society controlled by surveillance, manipulation, and the erosion of individual freedoms. As we journey further into the 21st century, it is both exciting and unnerving to witness how some of the concepts depicted in Orwell’s masterpiece are becoming eerily real. While we embrace the promise of technological progress, we must tread cautiously, aware of the moral questions that arise when technology outpaces regulation. In this article, we will explore the convergence of Orwell’s 1984 with our present reality and contemplate the moral dilemmas we face as a society.
Surveillance State and Privacy Concerns:
In 1984, the omnipresent telescreens monitored citizens’ every move, eroding privacy and fostering a climate of constant surveillance. Today, with the proliferation of smart devices, facial recognition systems, and data tracking, we find ourselves on the verge of a similar reality. From targeted advertising to government surveillance, the potential for abuse of personal information is a cause for concern. We must carefully balance the benefits of technology with the protection of individual privacy rights.
Manipulation and Media Influence:
Orwell’s novel portrayed a society where the truth was malleable, rewritten to suit the ruling regime’s narrative. In the era of social media and online news, we witness the power of information manipulation firsthand. Disinformation campaigns, filter bubbles, and algorithmic biases can influence public opinion, shaping our beliefs and behaviors. As a society, we must critically engage with information sources, promote media literacy, and advocate for transparent algorithms to preserve the integrity of truth and democratic discourse.
Thought Police and Freedom of Expression:
The Thought Police in 1984 suppressed dissent and punished independent thinking. While we have not reached such extreme levels of censorship, we see worrisome trends emerging. Online platforms grapple with the challenge of balancing free speech and harmful content. We must actively protect and uphold freedom of expression while tackling the spread of hate speech, misinformation, and incitement to violence. The challenge lies in finding a delicate balance that preserves both our right to express ourselves and the well-being of society as a whole.
The Need for Ethical and Responsible AI:
Orwell’s vision serves as a stark reminder of the dangers of unbridled technological advancement. As artificial intelligence (AI) becomes increasingly integrated into our lives, we must ensure its development adheres to ethical principles. Questions surrounding biased algorithms, algorithmic accountability, and the potential for AI-enabled oppression demand our attention. It is vital to establish robust regulations and ethical frameworks that guide the responsible deployment and use of AI technologies.
Looking Ahead with Caution and Optimism:
As we navigate the uncharted territory of advancing technology, we must approach the future with both caution and optimism. Embracing technological progress can bring remarkable benefits, enhancing our lives, and empowering us in unimaginable ways. However, we must actively address the moral questions raised by Orwell’s prophetic novel. Striking a balance between innovation and safeguarding individual rights requires collective responsibility, transparent governance, and active engagement from all stakeholders.
George Orwell’s 1984 offers a sobering reflection on the perils of unchecked power, surveillance, and manipulation. While we find ourselves witnessing elements of Orwell’s dystopian world manifesting in our reality, we must remain vigilant and strive to build a future that upholds our values and protects individual liberties. By actively addressing the moral dilemmas brought about by technological progress, we can forge a path towards a future that harnesses the benefits of innovation while safeguarding our collective humanity. With a cautious and optimistic mindset, we can shape a future where technology serves as a force for good.
Exploring Microsoft Copilot: Advantages and Considerations
Posted on July 5, 2023 Leave a Comment
Artificial Intelligence (AI) has made significant strides in recent years, transforming various industries and revolutionizing the way we work. Microsoft Copilot, an AI-powered coding assistant, has garnered significant attention as it aims to assist developers in writing code more efficiently. In this blog post, we will explore the benefits and limitations of Microsoft Copilot, shedding light on its potential impact on the coding landscape.
Benefits of Microsoft Copilot:
- Enhanced Productivity: Microsoft Copilot has the potential to significantly enhance developers’ productivity. By analyzing code context, it can generate intelligent suggestions and auto-completions, saving time and reducing repetitive typing. This allows developers to focus on higher-level design and critical problem-solving rather than spending excessive time on routine coding tasks.
- Improved Code Quality: Copilot leverages large-scale language models and deep learning algorithms to provide code suggestions. This can help developers produce cleaner, more reliable code by highlighting potential bugs, offering best practices, and suggesting optimal coding patterns. This can result in improved code quality, readability, and maintainability.
- Learning and Knowledge Sharing: Copilot draws on vast code repositories and learns from diverse coding practices, making it a valuable learning tool. Developers can benefit from exposure to different coding styles, libraries, and frameworks, expanding their knowledge base. Additionally, Copilot can help facilitate knowledge sharing within development teams, enabling less experienced developers to learn from more experienced colleagues.
- Reduced Cognitive Load: Coding can be mentally taxing, requiring developers to keep track of numerous details and syntax intricacies. Copilot helps alleviate cognitive load by providing intelligent suggestions and reducing the need to constantly reference documentation or search for solutions. This can lead to increased focus, reduced errors, and improved developer well-being.
Limitations and Considerations:
- Reliance on Existing Code: Copilot’s suggestions are based on patterns observed in existing code. While this can be helpful, it also means that Copilot’s suggestions may not always consider unique project requirements or uncommon scenarios. Developers should exercise caution and critically evaluate the suggestions provided by Copilot to ensure they align with their specific needs.
- Security and Privacy Concerns: Copilot relies on data from public code repositories, raising concerns about intellectual property rights and code privacy. While efforts have been made to anonymize the data, it is crucial for organizations to consider their code confidentiality requirements and ensure appropriate safeguards are in place before utilizing Copilot.
- Bias and Inaccuracies: Like any AI model, Copilot may exhibit biases or inaccuracies in its suggestions. This is due to the model being trained on existing code, which may reflect biases in the coding community or inaccuracies in certain code patterns. Developers should be aware of this and exercise critical judgment when using Copilot’s suggestions.
- Learning Curve and Skill Development: While Copilot can boost productivity, it is essential for developers to maintain a deep understanding of coding principles and not overly rely on its suggestions. It is crucial to strike a balance between leveraging Copilot’s assistance and continuously honing coding skills to avoid becoming overly dependent on the tool.
Microsoft Copilot holds great promise in transforming coding workflows by offering AI-powered assistance to developers. Its ability to enhance productivity, improve code quality, and facilitate learning are undeniable advantages. However, it is important to approach Copilot with a critical mindset, considering the limitations and potential challenges associated with its reliance on existing code, security concerns, and the need for ongoing skill development. By leveraging the benefits of Copilot while keeping these considerations in mind, developers can harness the power of AI to write better code and advance the field of software development.
Apple Vision Pro: A Game-Changing Innovation Unleashed at WWDC 2023
Posted on June 7, 2023 Leave a Comment

As an avid Apple enthusiast, I have eagerly followed the annual Worldwide Developers Conference (WWDC) events, waiting for the moment when Apple unveils its latest breakthroughs. The WWDC 2023 keynote left me awestruck with its incredible lineup of innovations, but there was one announcement that truly stole the show for me: Apple Vision Pro. As I sat on the edge of my seat, I couldn’t help but feel an overwhelming sense of excitement and anticipation to experience this cutting-edge device firsthand.
Revolutionizing Visual Experiences:
Apple Vision Pro is set to revolutionize how we interact with the world around us. Combining Apple’s unparalleled design finesse with breakthrough technologies, this visionary device has the potential to redefine our perception of reality.
Advanced Augmented Reality (AR) Capabilities:
Apple’s AR capabilities have always been impressive, but Vision Pro takes it to a whole new level. With an upgraded LiDAR scanner and enhanced neural engine, Vision Pro promises an immersive AR experience that seamlessly blends virtual elements with the real world. From interactive gaming to immersive storytelling and practical applications like home design and shopping, the possibilities are endless.
Crystal-Clear Display and Intelligent Eye-Tracking:
The moment Apple showcased the stunning display of the Vision Pro, my jaw dropped. The high-resolution OLED screen coupled with advanced HDR technology ensures vibrant colors, true blacks, and incredible contrast. But what truly amazed me was the integration of intelligent eye-tracking technology. Vision Pro can precisely track eye movement, allowing for natural interaction and dynamic content adjustment. It’s like having a device that understands exactly where you’re looking and responds accordingly.
Intuitive Gestures and Haptic Feedback:
Apple has always excelled in intuitive user experiences, and Vision Pro takes it to new heights. The device recognizes hand gestures, enabling seamless navigation and control. Whether it’s scrolling through content or manipulating objects in AR, the intuitive gestures add a layer of immersion and fluidity. Additionally, the haptic feedback system enhances the sensory experience, making interactions feel incredibly realistic.
Unparalleled Performance and Power Efficiency:
With the latest A15 Bionic chip, Vision Pro promises unparalleled performance and power efficiency. This means lightning-fast app launches, smooth multitasking, and seamless AR experiences without sacrificing battery life. I can already envision myself effortlessly switching between apps, exploring AR worlds, and creating stunning content without worrying about performance limitations.
The Future of Personal Computing:
Apple Vision Pro is not just another device; it’s a glimpse into the future of personal computing. With its powerful capabilities, intuitive interface, and groundbreaking technologies, it has the potential to redefine how we work, create, and communicate.
Final Thoughts:
As an ardent Apple fan, I can’t help but feel an overwhelming sense of excitement for the future with Apple Vision Pro. The device’s advanced AR capabilities, crystal-clear display, intuitive gestures, and powerful performance make it an innovation like no other. I eagerly await the moment when I can get my hands on Apple Vision Pro and embark on a journey into a world where the boundaries between the physical and the virtual blur. Apple has once again proven its dedication to pushing the boundaries of technology, and I am counting down the days until I can experience this game-changing device firsthand.
Domain-Driven Design: Unlocking the Power of Technology for Businesses
Posted on March 7, 2023 Leave a Comment
In today’s rapidly evolving digital landscape, businesses are constantly seeking ways to harness the power of technology to drive growth, innovation, and operational efficiency. However, navigating the complex world of technology can be challenging, especially for non-technical stakeholders. This is where Domain-Driven Design (DDD) comes into play. DDD offers a powerful framework that enables businesses to conceptualize the different components of the tech landscape in a more tangible and meaningful way, fostering effective communication and collaboration between business and technology teams.
Understanding Domain-Driven Design:
At its core, Domain-Driven Design is an approach to software development that places the primary focus on the business domain and the underlying problem being solved. Rather than being driven solely by technical considerations, DDD encourages a collaborative process between domain experts and technical teams to model and design software solutions that align closely with the business needs and objectives.
Key Concepts of Domain-Driven Design:
- Ubiquitous Language: One of the fundamental principles of DDD is the development and adoption of a shared, business-oriented language called the “Ubiquitous Language.” This language acts as a bridge between business stakeholders and technical teams, ensuring clear and effective communication, reducing misunderstandings, and fostering a deeper understanding of the problem domain.
- Bounded Context: A Bounded Context defines a specific area or boundary within which a particular model or language is valid and meaningful. In a complex business environment, different departments or teams may have their own understanding and terminology for certain concepts. By defining explicit boundaries with Bounded Contexts, DDD allows for more focused and coherent modeling, leading to better software designs and more effective collaboration.
- Domain Model: The Domain Model is a representation of the core concepts, rules, and relationships within a specific business domain. It serves as the backbone of the software solution and encapsulates the business logic. By creating a well-defined Domain Model, businesses can gain a comprehensive understanding of their processes, identify potential bottlenecks, and make informed decisions about system behavior and functionality.
Benefits of Domain-Driven Design for Businesses:
- Enhanced Collaboration: DDD fosters collaboration and shared understanding between business stakeholders and technical teams. By creating a common language and modeling the problem domain in a tangible way, DDD enables more effective communication, reducing the gap between business and technology teams.
- Improved Software Quality: By focusing on the core business domain and modeling it accurately, DDD helps create software solutions that better reflect the business needs and objectives. This results in higher-quality systems that are more maintainable, adaptable, and aligned with the evolving business landscape.
- Agility and Flexibility: DDD promotes modular and loosely coupled architectures, allowing businesses to adapt and respond to changing market conditions and customer demands more quickly. By defining Bounded Contexts and emphasizing the separation of concerns, DDD enables businesses to introduce new features or functionalities without disrupting the entire system.
- Scalability and Growth: With DDD, businesses can break down complex domains into smaller, manageable components. This modular approach not only simplifies development and maintenance efforts but also paves the way for scalable solutions that can support business growth and expansion.
In the age of digital transformation, Domain-Driven Design offers businesses a powerful framework to navigate the complex tech landscape with clarity and purpose. By focusing on the business domain, fostering effective communication, and aligning technology solutions with business objectives, DDD enables businesses to unlock the full potential of technology, driving innovation, efficiency, and sustainable growth. Embracing Domain-Driven Design can be a transformative step for businesses looking to bridge the gap between their business goals and the technology that powers them.
The Engineering Leader
Posted on March 14, 2022 Leave a Comment
The Engineering Leader is a brand new podcast that I launched today with my first guest Adam Rush, Technical Director at Stream talking about Developing for iOS. The podcast is aimed at helping the Engineering community to collectively raise the bar by sharing best practices that have been implemented by leaders working in some of the worlds most successful engineering organisations.

So why me? I am the Global Head of Engineering at Glaxo Smith Kline Consumer Healthcare; prior to this I headed up software engineering at Boots working predominantly across the customer channels including Boots.com and the Boots Mobile App.
I have been leading software engineering teams for more than 14 years and have worked for both small start-up and large enterprise. Throughout my career I’ve got to know people who know how to build software really well and I’ve also encountered people and organisations who make choices that really limit the potential of their engineering teams. Seeing the mistakes that organisations make has really inspired me to want to help the industry collectively do better; and its important because the software that we are building today is going to shape the technology landscape for the next decade.
I want to use this podcast as an opportunity to help us as an industry get better at building software. We are all still learning the best ways to develop software primarily because software engineering as a career is still less than a generation old! Charles Babbage may have invented the first computer in 1822 and Apple and Microsoft may have been founded in the 1970’s but our modern popular understanding of software engineering as a serious career choice didn’t really come about until the 1990’s when we entered the age of the internet.
Software Engineers working with modern programming languages have learnt everything they know within the last 40 years; that’s within my life time. I am 35 years old and I can remember not having a computer in my house. Compare this to other industries; King Edward the 1st created the first modern lawyers more than 800 years. The first double entry book system was used by accountants in 1494 and the industrial age that modernised factories started in 1760. It is therefore not surprising that we are still learning the best ways to build software because the digital age has, relatively speaking literally just started.
With this podcast I am going to be talking to people who are working right at the top of their professional game; people working within organisations who truly understand how to build great software product and change agents who are successfully helping their organisations to digitally transform. The podcast is totally unscripted, its just me having a conversation focussed around current topics that are relevant today within the Software Engineering Community.
In the coming weeks I’ll be talking to leaders like:
- Michelle Kearns Head of IT for Boots Ireland who will be sharing her experience of working with Healthcare Tech.
- Dario Incalza who will be sharing his insight into DevSecOps and how he goes about ensuring that security is at the heart of his Engineering Squads.
- Alex Karp who will be reflecting on the role of the Engineering Manager and how he goes about building high performing teams at Twitter.
I really hope you find it useful, if you do please reach out to me on twitter @stevewestgarth or search Steve Westgarth on LinkedIn.
I’m also actively looking for people who would like to contribute to the podcast, if you have something interesting to say please don’t hesitate to reach out.
A Great Place to Work
Posted on January 7, 2022 Leave a Comment
January 2022 brings with it mixed emotions for me as I prepare to leave my role as Head of Engineering at Boots and move onto pastures new (more on that very soon). Over Christmas I’ve been contemplating the experience I’ve gained at Boots and how much I’ve enjoyed working within the organisation over the last 3 years.

I very much saw joining Boots as a career defining moment and I will be forever greatful to Joe Elevathingal and Sarah Marsh for bringing me to the organisation — the opportunity to work with one of the UKs most loved brands was, and has been an absolute privilege and I know I will look back on as a highlight of my career. If you stop and think for a moment, how many people get to work with an organisation that literally touches the lives of millions of people everyday?
Over the last 3 years I have had the privilege of helping the organisation to change in ways that simply were not even imaginable when I joined. As a retailer we need to respond to the needs of our customer ever more quickly in order to stay ahead of the competition. I’ve helped Boots to embrace a more agile mindset, setting our teams up for greater success by developing SAFe agile release trains and forming cross functional delivery squads that are moving towards a CI/CD mindset based around a modern cloud native technology stack.
From an Engineering perspective it is fair to say that Boots still has a long way to go to achieve its ambition of being a truly modern engineering organisation but the passion and enthusiasm of the people within the organisation to change and adopt new ways of working really is infectious.
Choosing the company that you want to work for is a very difficult decision; for me its important that the organisation I work for is making a difference. During the pandemic I have unwittingly found myself on the front line of the UK’s response supporting our stores, team members, patients and customers in ways that I would never have imagined. The community spirit within Boots is palpable and the joy of being part of a team who truly want to impact peoples lives in a positive way has driven me to realise how privileged I am to have been able to support this amazing organisation.
There have been so many achievements during my tenure at Boots, almost to many to mention. For me the launch of Adobe AEM which now serves the Homepage, Brand, Article and Category pages is probably the greatest success and technical accomplishment; we cannot however diminish some of the other great success stories such as launch of Algolia search, replacement of our customer identity and access management solution and where would we be without our cloud native customer engagement platform that is rapidly becoming the future for Boots.com.
Each of these achievements, and many others have been made possible due to the passion and enthusiasm of the people that work at Boots. It is the people that make Boots an amazing place to work and the people that have enabled all of these phenomenal success stories that I have been proud to be a part of. I have never worked within a more dedicated and inspiring team and for that I thank all the colleagues that I have worked with for giving me a reason to want to come to work each day.
While I can’t name everyone at Boots that I am going to miss dearly I do need to give a special shout out to all of my direct reports — during the last 3 years you have helped me to grow as a leader and I hope I have provided opportunities for you to also grow, learn and develop your own careers — it has been a pleasure managing each and every one of you and I really hope that we have the opportunity to work together again in the future.
Leaving Boots has been a big decision for me; I am focussed on developing my own career and the opportunity to have an impact within an organisation on a more global scale is simply to good to turn down. I can honestly say I have loved every moment of working for Boots and I wish the organisation every success in the future — it would be an honour if our paths did cross again; for the right opportunity I wouldn’t hesitate to return.
Why Agency Agile Is Broken
Posted on April 1, 2021 Leave a Comment
Countless books have talked about why organisations need to adopt an agile way of working; the promise of delivering value faster and ensuring that the customer ultimately gets what they want because they can change their mind and reprioritise requirements is an alluring prospect.
Unfortunately introducing an Agile way of working within an agency often results in unmet expectations and a feeling that Agile didn’t deliver everything that was promised.

Let us explore a typical “Agile Project” within an Agency.
Meet Chris (the sales person). Chris is really pleased that he has a lead from a new company and feels confident the agency can deliver the work required.
The project starts well — the client comes into the office and explains their requirements. Chris invites Joe (Technical Expert) into the room to assist with the sales process; Joe listens carefully to what the client says and articulates confidence that he understands exactly what the client is looking for.
In some agencies a project discovery phase may be sold to the client — this is usually a meeting or series of meetings which allow Joe and his friends to drill into what it is the client actually wants and ensure that they have a really good grasp of the requirements for the project.
At some stage during the sales process Chris will explain to the client how the project process works and the client is introduced to the concept of an Agile delivery. Invariably the conversation will go one of two ways:
Time and Materials
The agency explains to the client that they work in an Agile way and as a result the client can change their mind and re-prioritise requirements as the project progresses. For this reason the agency can’t give a fixed price and instead will estimate each of the requirements based upon the number of days required to complete the work.
The client is asked to place a work order for a fixed number of days to be used to deliver the highest priority requirements. If the client adds additional requirements they will be estimated and then prioritised accordingly. This might mean that lower priority requirements can’t be done because the client hasn’t purchased enough days — the client can either forego the requirement or purchase additional days to get the work done.
The client signs up to this approach confident that they are in control and that they effectively have a fixed price because they know that they won’t add or change any of the requirements during the project.
Team Velocity
The agency explains to the client that they work in an agile way. The agency has a SCRUM team available to complete work and the team is able to deliver x points of value per sprint.
Each requirement will be estimated according to size and this will be converted into a numerical value using the Fibonacci sequence (a significant amount of the meeting is spent explaining this concept to the client). It is agreed that requirements will be prioritised by the client and will be grouped together into a sprints worth of value.
The client is asked to place an order for a set number of sprints worth of work. If the client adds additional requirements they will be prioritised outside of the current sprint. This protects the work currently being done by the agency and ensures that the entirety of the clients budget isn’t wasted by going down one particular route without checking in with the client.
The client signs up to this approach confident that they are in control and that the overall project budget is protected. The project is effectively fixed price because the client knows they won’t add any further requirements and there are milestones in place at the end of each sprint that can be used by the client to check progress.
Following this initial meeting the company will undoubtedly want to produce a proposal. In this document the company will replay what they have been told by the client to provide confidence that the requirements have been understood. The client will sign on the dotted line and the project will begin.
Typically the project starts well; delivery seems to be on track and the developers make all of the right noises during daily stand-ups (The Agency has started doing these because that’s what Agile organisations do — in reality it is an opportunity for the Project Manager, Jim, to demand an update which can be given to the client).
The client is given regular updates by Jim (who may or may not have been involved in the discovery phase) and they are pleased things seem to be on track and progressing according to plan. As the project progresses things start to go wrong:
Something was under estimated
A specific requirement was estimated as a small task that should only take a day to do — this isn’t actually a small task and takes 8 days to complete. At the end of the sprint the client isn’t happy that everything which was promised hasn’t been delivered within the agreed timescale.
Jim explains to the client that the feature took longer to do than expected and advises that the work will be prioritised in the next sprint. The client asks who is paying for the next sprint and states that they shouldn’t have to because the estimation is at fault and states that Chris promised that the company were really good at estimating — in the clients view as the agency was responsible for estimation it is the agencies mistake and as a result the work that was not completed should now be finished for free.
In return the client will graciously accept that the deadline has slipped but advises it is now critical that no other deadlines are missed or their project will be severely impacted.
In case you hadn’t noticed — the concept of Agile is now forgotten and we are effectively working fixed price waterfall.
Another project is experiencing problems
The clients project is underway and progressing well. Another project is experiencing some issues (perhaps it is the project referred to above where something was under estimated) the developers are asked by Jim to help get the other project over the line and immediately stop work on the clients project.
At the end of the sprint everyone is surprised that the clients project hasn’t made as much progress as was expected; Jim explains the problem to the client and the agency agrees to continue working on the project at no extra cost to get the work over the line. The client accepts that the deadline has slipped but advises it is now critical that no other deadlines are missed or their project will be severely impacted.
Once again we have slipped into a fixed price waterfall mindset.
The scenarios described above may be repeated several times. By the end of the project the client is generally ‘happy’ that they have a deliverable that broadly meets the requirements that was originally outlined. It is likely they have a sense that they have had to compromise on some features but they accept this as they have worked in an agile way and this was explained to them at the outset. The project has taken longer to deliver than anyone thought it would but the client is happy because they have only had to pay for the work that they committed to so their budget remains intact.
If any additional money has been spent it is for something brand new that definitely wasn’t mentioned in the initial project meeting. We know this because even though the client was “absolutely sure” that it was mentioned in the meeting the agency has spent several hours going through the proposal internally and grilling everyone who was at the meeting asking them to remember what happened in the room several months ago just in case the client had mentioned the new thing in passing.
After much negotiation the client reluctantly accepts that it was not part of the original requirements and agrees to pay for the bare minimum amount of extra work in order to make sure the new thing gets done.
Sound familiar? I have seen the project process above repeated within countless agencies. The harsh truth is that although everyone involved in the process firmly believes that they are working in an agile way the process described above can at best be described as “fr-agile”.
The agency has taken the bits of agile that sound good to the client and have sold a dream of being able to change requirements and deliver things quickly without also ensuring that the client is subscribed to the reality that they are also working in a world of estimation uncertainty. As a result the agency has inadvertently taken on the uncertainty risk because when things go wrong the agency gives ground in order to make sure the client is a happy customer.
Fixing Project Variables isn’t Agile.
The starting point for fixing the problem is to understand why the approach outlined isn’t agile. Let us consider a waterfall project — in projects of this type organisations try to fix the 3 project variables:
- Time
- Scope
- Budget
Agile methodologies recognise that in order to adapt to change all 3 of these variables cannot be fixed. In an agile approach typically budget and time will be fixed by virtue of the fact you have a set number of resources working for a given period of time, i.e. a sprint.
Agile methodologies recognise that in such circumstances it is not possible to fix scope because of the degree of uncertainty found within software development projects.
If we map this onto our typical “Agile Project” it becomes clear that the clients expectations were mis-set during the initial project meeting — estimating features in terms of days or story points allows the client to build a phycological bond between the money they are paying and the estimation that has been given — it is this phycological contract which is broken when a piece of work has been under-estimated and delivery therefore takes longer or when less work is delivered that was originally promised.
A better way ….
In order to move beyond fr-agile ways of working clients and agencies need to embrace the true essence of what it means to be Agile.
A good starting point is to review the Agile Manifesto. The first statement is that a truly agile organisation values
“Individual and Interactions over processes and tools.”
In my view the solution the agency agile problem requires agencies and clients to establish a close and trusting bond where both agency and client are incentivised to do the right thing and work together in order to meet the objectives of the engagement.
For an agile project to be successful the whole team need to work truly as one organisation. Both sharing in both the successes and failures of decisions that are taken.
Agencies must build a bond with a client where we move away from a traditional customer supplier relationship and move to a world where the everyone is aligned and incentivised to achieve the same goals and ambitions. This requires both parties to truly embrace moving beyond a fixed scope agreement and understanding at a deep and meaningful level what success really looks like.
The solution to the problems highlighted in this article are not easy or straightforward; but solving a problem begins by identifying that there is an underlying issue and agreeing that there is a problem which needs to be solved.
The premise of this article is that Agency Agile is broken; what are your views? Have you encountered an agency that faces the problems outlined in this article? Perhaps you have worked with an agency who has been able to move beyond the problem and create an environment where both client and agency successfully partner to create a shared outcome, shared risk and shared reward engagement?
Please reach out to me and share your experiences — @Steve Westgarth
