Skip to content

Joshua Abshear, CPM Posts

Building Right: The Power of the Problem Space

I recently attended a virtual conference packed with expert panels and practical sessions. One theme stood out across every track: Teams often rush to build before they truly understand what needs to be solved. It’s a common trap in fast-paced environments; we race to deliver, show progress, “Get Things Done.” But speed without alignment is waste, and delivering Features that don’t solve meaningful problems is just another form of Tech Debt.

One of my favorite sessions was a guest speaker from Solution Design Group, Jason Scherschligt. He took a deep dive into the importance of Requirement Refinement (not just gathering initial requirements). His talk highlighted the importance of understanding the Problem Space – requirements shouldn’t just be checkboxes defined at the beginning of the Agile machine, rather, they should be the heartbeat of successful Sprint cycles, consistently revised and reconsidered.

Too often we jump straight into Project Plans or filling Sprint Backlogs with significant pressure to showcase value. But collectively marinating in the Problem Space long enough for all stakeholders – from product managers to leadership and engineers – to develop a shared, unambiguous understanding of the use case can substantially enhance long-term value, even though it feels uncomfortable.

This conference drove home the difference between a Project mindset, which prioritizes finishing soon, versus a Product mindset, which focuses on solving the right problems for enduring value. Without properly defining the why behind the work, we’re delivering tickets rather than outcomes. If we’re not refining our requirements with discipline and empathy, we’re not building a product — we’re just shipping Features into the void.

The Trap of Premature Solutioning

Most Agile teams are good at Delivering — but not always at Discovering. When we skip the depth of exploration and move too quickly into implementation, Stakeholders talk past each other, Engineers jump straight into building what may not be needed, and Features ship on time but go unused.

Skipping to Solutioning often feels right in the moment, only to later realize that we missed the mark. We mistake Velocity for Progress and confuse Output with Impact. I’m frequently guilty of this – my wife calls me out for trying to “solve” a problem, when really I just need to better understand what’s going on.

Premature Solutioning often stems from pressure to execute and an overemphasis on Velocity.

Backlog Refinement should always be collective contextualization of the Ask, not waiting until something is “Fully Defined” to then handoff for Effort estimation and assignment for Delivery. Teams that treat Refinement as a collaborative thinking space to elevate shared understanding – not just a sprint checklist item – build smarter, more targeted solutions.

By staying in the Problem Space longer, Teams are empowered to challenge unvalidated assumptions and uncover root causes instead of putting Band-Aids on symptoms. If we explore multiple angles before converging on one solution, we can avoid wasting cycles on elegant answers to irrelevant questions. What some may write off as “Analysis Paralysis” can truly be focused discovery that saves time downstream.

Project vs. Product Mindset

When we focus solely on delivering Features and finishing the Project, we may hit deadlines but miss impact. A Product-centric Approach embraces agility not just in delivery, but in problem framing and value validation. This shifts how refinement sessions are run, how acceptance criteria are written, and how decisions are made.

A Project mindset says:

  • “When can we finish this?”
  • “What’s in scope?”
  • “How do we stay on schedule?”
  • “Does this meet all previously defined requirements?”

A Product mindset asks:

  • “What problem are we solving?”
  • “How will we know it worked?”
  • “What else do our users need?”
  • “Does this deliver long-lasting value that will endure?”

Final Thoughts: Build with Purpose, Not Just Pace

Refinement shouldn’t be a formality — it’s a fulcrum that requires collaboration. When done correctly, it aligns teams, sharpens our focus, reduces rework, and transforms the Agile SDLC from a delivery machine into a value engine. By staying in the Problem Space longer and cultivating a Product Mindset, we ensure that what we build is not just delivered — it’s meaningful and enduring.

Slow Down.

Ask Questions to Understand, not just Answer.

Focus on what Matters.

Leave a Comment

All Software is Software-as-a-Service (SaaS)

Remember when software came in a box? I remember collecting my first Adobe products and training videos on a shelf next to my homework. But now, even our refrigerators ask for a WiFi connection and check for firmware updates.

In today’s hyper-connected world, all software increasingly behaves like Software-as-a-Service (SaaS). Whether it’s running in the Cloud, on an On-Prem server, or your Local PC, all applications are really part of a larger distributed collection of services. The only real difference is how far they have to reach to get updates ( the ping time ).

I’d like to challenge the traditional definitions of SaaS and illustrate how modern software delivery ( and businesses offering these products ) have universally adopted service-oriented paradigms.

Image Source: XKCD


Traditional Boxed Software vs SaaS

Back in the early 2000s, the traditional “Boxed” software had evolved from floppies to discs and included everything you needed to run straight out of the packaging. Most also included a glossy little license sheet and beautifully printed manual.

The Adobe CS2 Software Product Box

SaaS” was considered a special type of Software that supported Multi-tenancy and was charged as a Subscription model, as well as being centrally hosted away from the client’s end-system.

Today though, even locally installed applications now rely heavily on cloud services. Adobe, Microsoft, all the latest video games – they all require a patch or update after you install. Part of this is due to improved security methods and companies getting smart in how they combat piracy. But, it also aligns with the overall adoption of software products being considered services and the expectation that updates are distributed to all customers.

All Modern Software now falls somewhere on what you might call a “Spectrum of Cloud Dependency”. There are Cloud-Native Applications that are 100% hosted and can only be accessed via a web browser. Hybrid Applications include some local components but also have hosted backend APIs ( Slack, Spotify ). Then there’s Cloud-Tethered “Desktop” Software that requires online access for full functionality ( AutoCAD, VS Code Extensions ) as well as Edge Devices & IoT like Smart home tech, wearables, your Tesla, and everything else that connects to your smart phone.

As nostalgic as it is to look back on the days of Boxed software, it has become a thing of the past. Everything now requires some type of connection, either to connect the user to the service’s interface or the core dependencies of the service. Latency has become the primary problem to solve, because the Ping time directly shapes the User Experience. Performance, Resilience, and UX Design all contribute to reducing latency and keeping customers happy. For those of you who feel Local Apps are still a thing, I would challenge you to consider that those applications are really just Low-Ping Cloud Clients. There are a very small number of scenarios where connectivity is antithetical to the business use case, but Offline Mode has become an exception, not the standard.


Implications for Building Software

What does this mean for those of us who build and ship software? Our customers have Always-On Expectations. When they pay for a software product, they expect responsive and intuitive experiences with non-negotiable reliability. This means we need to carefully consider how we operate and what we prioritize.

Do our products have Monitoring & Telemetry so that we can catch issues with our software before customers notice? Are Deployment Pipelines optimally configured so that our delivery process is streamlined? Are Cloud Governance Policies in place so that customer data is not at risk?

An ever-increasing concern with Modern Software is the Security and Compliance impacts of data in the Cloud. It’s important to realize that “Local” does not necessarily mean private and even “offline” software has cloud risks.

The core takeaway is that every piece of software today exists within a service-oriented ecosystem. Whether it’s music streaming in your browser, a spreadsheet on your laptop, or a firmware update on your phone, in our modern world, everything is SaaS – the only distinctions are how far the signal travels and how long it takes to get there.

The future isn’t “cloud vs. local.” It’s about understanding that software is a continuum — and in the age of APIs, integrations, and ever-more-connected experiences, how do we provide the best service?

Leave a Comment

Exploring Innovations in Software Product Delivery

Join me on a never-ending journey into the world of modern technology and continuous learning. I’ve had the opportunity to work across a wide spectrum of disciplines, building and shipping software for many different industries.

But more than just showcasing a resumé, this website is intended to serve as a living repository of insights, experiments, and lessons learned. Whether you’re a fellow technologist, product leader, or simply someone curious about the evolving world of software — my goal is to make this space valuable, informative, and occasionally thought-provoking.

What to Expect

Over time, you’ll find content covering:

  • Cloud & DevOps Practices
    Deep dives into Azure DevOps, Infrastructure-As-Code, CI/CD strategies, and Cloud-native Architecture.
  • Product & Project Management
    Insights into Agile delivery frameworks, prioritization models, roadmap planning, and stakeholder alignment for working across multiple teams and organizations of various sizes.
  • Emerging Technologies
    Explorations into Virtual and Augmented Reality, Automation and Monitoring Toolsets, and innovative use cases for AI/ML and Data Platforms.
  • Cross-Disciplinary Thinking
    Reflections on where and how software impacts other market sectors and intersects with today’s business landscape.

This blog is as much a creative outlet as it is a professional resource — a place to document what works, what doesn’t, and what’s next.

Why Now?

The pace of technology is relentless — but so is the need for thoughtful leadership, structured experimentation, and adaptive strategies. By sharing my experiences and challenges along the way, I hope to contribute to the broader conversation about how we build, deliver, and evolve software products in an ever-changing digital world.

Thanks again for visiting. The best is yet to come.

— Joshua

Leave a Comment