During the early stages of my career, I delivered bespoke applications and system enhancements across multiple organisations, combining hands-on software development with project management. These projects spanned a range of technologies and business domains, providing both technical depth and an understanding of how software delivery connects to business outcomes. Here's what these engagements involved and the expertise they developed.
1. Combining Development and Delivery
A distinctive feature of these early projects was the combination of hands-on development with project management responsibility. Rather than working exclusively as either a developer or a project manager, I operated across both domains — writing code, designing solutions, and managing the delivery process. This dual perspective provided a deep understanding of the practical challenges developers face and the importance of realistic planning, which has continued to inform my approach to managing technology delivery throughout my career.
2. Requirements Analysis and Solution Design
Each bespoke application began with thorough requirements analysis to understand the business problem being solved. I developed skills in:
- Stakeholder engagement: Working with business users to understand their needs, translating business language into technical requirements, and managing expectations about what was achievable within budget and timeline constraints.
- Solution architecture: Designing application architectures that balanced functionality, performance, and maintainability, making pragmatic technology choices appropriate to each project's scale and context.
- Scope management: Learning to define and manage scope effectively, balancing the desire to deliver comprehensive solutions against the practical constraints of budget, time, and team capacity.
3. Hands-On Development
I worked across multiple technology stacks including ASP.NET, SQL Server, and JavaScript-based frontends, building applications ranging from internal business tools to customer-facing platforms. This hands-on development experience provided practical understanding of database design, application security, performance optimisation, and the importance of writing maintainable code. Working across different technology stacks also developed adaptability and a technology-agnostic problem-solving approach.
4. Testing and Quality Assurance
Delivering quality software requires disciplined testing throughout the development lifecycle. I established testing practices for each project that included unit testing during development, integration testing when components were combined, and user acceptance testing with business stakeholders before deployment. These early experiences instilled a commitment to quality assurance that has remained central to my approach, regardless of whether I am writing code or managing teams who do.
5. Deployment and Support
Delivering bespoke applications extended beyond writing code to include deployment planning, user training, and ongoing support. I managed deployment processes that minimised disruption to business operations, provided training that enabled users to work effectively with new applications, and established support arrangements to address issues and enhancement requests post-deployment. This end-to-end responsibility ensured that applications delivered genuine business value rather than just technical functionality.
6. Lessons That Shaped My Career
These software development projects provided formative experiences that shaped my subsequent career in technology delivery and consulting. The combination of technical depth and project management breadth developed a perspective that values both technical excellence and business impact. Understanding the realities of software development — the challenges of estimation, the importance of testing, and the gap between technical completion and business adoption — has been invaluable in managing larger programmes where these dynamics play out at greater scale.
Conclusion
These early software development projects provided the technical foundation and delivery discipline that underpin my consulting practice today. By combining hands-on development with project management, these engagements developed a practical understanding of the full software delivery lifecycle — from requirements through to deployment and support — that continues to inform how I approach technology-enabled business transformation at every scale.
Interested in working together?
Let's discuss how I can help drive results for your organisation.
Get in Touch