News, stories and opinions for the business innovators of the world.

4 essentials for software development excellence

Qerim ShahiniCTO, PI Digital

Back in the late 90s, the first product I created saved the traders in big financial companies hours every day. They loved it and bought it.

Just one problem: my team and I worked day and night for months to deliver it. Not terribly efficient. To be honest, if we had charged for our time, no one would have been able to afford our software. (The folly of youth.)

Since then, I’ve fine-tuned the development process and proved, in my own companies and working with clients, that if I get the following four essentials right, we achieve software development excellence every time. And we do so at the least possible expense.

We use the Agile methodologies, working collaboratively and iteratively. But we avoid some of the potential traps of Agile by adhering to these four underlying principles in everything we do. In the end, that means we deliver quality software and greater profits for our clients.

The four essential elements are:

1. Story mapping to start

We start each project by “painting a picture” of the perfect outcome. Using plain ol’ English, we describe what the system needs to look like. We identify what’s the most valuable and where the risks lie from the start. PI uses a proven system called “Story Mapping” to truly engage with our customer and create a common understanding of the planned outcome.

It’s an incredibly valuable process. Our approach is based on the bestselling book by consultant Jeff Patton: User Story Mapping: Discover the Whole Story, Build the Right Product.

Story mapping is our guiding light. It is a high-level brainstorming activity that blends the theories of Agility, Lean Startup and Design Thinking. It keeps everyone focused on value – the product developer with the original idea, and the engineers building the product.

2. The best tools

We use the best tools money can buy. Why do we go to that expense?  Because without the best tools, technical people lose focus on value. They get drawn into tool creation. Engineers might spend three months building continuous integration tools, test frameworks, deployment tools when they could have bought them off the shelf and had them working in a week. If you insist on starting your project with the best tools, you will reap the benefits in time saved as the project develops.

3. Strong development standards

To achieve predictable, repeatable outcomes, we keep our reference architectures and development standards (best practice “blueprints”) fairly static.

Once we agree on best-practice and clearly communicate those decisions to everyone in the process, the “noise” disappears. It’s calm. We stop wrestling with the “how” of technology and deployment. We become experts in our best practices quickly and think about “what” we are making, not “how” to make it.

Good development standards create predictable outcomes. That means we get very good at estimating time and cost, and confident in our ability to deliver. That is gold because everyone can focus on taking our customer through the product journey.

4. World-class people

In my experience, spending a little extra money to attract and retain the right people saves a lot of money in the long term. The challenge most companies face is knowing what to look for in their contractors or employees.

I am crystal clear about who I want on my team. The right people are technically gifted, can hold a conversation like normal people (which is hard in software land), are passionate, and are delivery focused.

Summary

Based on decades of experience in software development, and delivering dozens of projects, I have fine-tuned software development excellence into four essential steps.

Start with story mapping, buy the best tools, commit to strong standards and work only with the people who are focused on value and delivery, and speak about technology in plain English.

If you’ve got those four things – which we really do here at PI – you have your house well in order. You can approach any problem and de-risk, maximize value and deliver, deliver, deliver. That’s what I’m all about.

Learn more about PI Digital or get in touch.

SHARE THIS ARTICLE:
Qerim Shahini CTO, PI Digital
Qerim Shahini

Qerim is CTO of PI Digital. He has over 15 years’ of software development experience, almost exclusively working from the ground up on complex and mission critical systems. Qerim has successfully led software teams all over the world, shipping products in both regulated and non-regulated environments for small start-ups and large multi-national organisations.

Qerim Shahini

Related Articles.

Qerim Shahini: Driving Digital Delivery

Digital

Qerim Shahini, CTO at PI Digital, applies the lessons learned from an action-packed entrepreneurial career to bring an unwavering commercial focus to every project his digital delivery team creates.

PI Digital established with a focus on rapid deployment of digital health and IoT solutions

News

PI Digital combines a collaborative engagement model with a strong commercial focus to develop customized digital solutions, including for regulated medical environments.

PI’s Digital Health Team partner with Merck to launch QBOX IVF for improved efficiency in fertility labs

News

QBOX IVF connects and streamlines data transfer between lab instruments and Electronic Medical Record providers, supporting healthcare professionals in fertility.

PI wins top medical design award and digital app award

Design

Planet Innovation took home the Good Design Awards’ top gong for medical design for our work on Clever Culture Systems’ APAS Independence instrument, along with a digital design award for Uniting NSW’s Mosaic app.

Digital

Qerim Shahini: Driving Digital Delivery

Qerim Shahini, CTO at PI Digital, applies the lessons learned from an action-packed entrepreneurial career to bring an unwavering commercial focus to every project his digital delivery team creates.