Haji Omer Sheno
Haji Omer ShenoHaji Omer Sheno
Back to blog
September 11, 20264 min read

The Difference Between Building Software and Solving a Problem

Software EngineeringDigital TransformationHealthcare TechnologySystem ArchitectureEthiopiaBusiness Technology

I Don't Build Software Just to Write Code

For a long time, I didn't focus much on social media.

While many developers were building their online presence, sharing projects, discussing technologies, and growing their networks, I was focused somewhere else.

That is where my understanding of software engineering developed.

Technology Is Only Valuable When It Solves a Problem

It is easy to become fascinated by technology.

But there is a question I believe should come before all of them:

What problem are we actually trying to solve?

A hospital does not need a modern JavaScript framework simply because it is modern.

A pharmacy does not need an application because having an application sounds impressive.

A business does not need a database because every modern business has one.

Technology has value when it improves something that matters.

That is the type of engineering that interests me.


Working With Real Healthcare Problems

Healthcare is one of the most complex environments in which software can be deployed.

A single patient journey can involve multiple departments, professionals, financial transactions, insurance processes, pharmacy operations, reporting requirements, and clinical decisions.

These processes cannot be solved by looking only at a screen.

You have to understand what happens behind the screen.

These questions are just as important as the programming language used to build the application.


From Problems to Systems

My work has involved developing digital systems for healthcare and business operations, including hospital information systems, health insurance and revenue workflows, pharmacy management, wholesale systems, reporting, integrations, and custom web platforms.

The technology changes from project to project.

But the engineering process remains similar:

Understand the problem.

Understand the people and workflow.

Design the solution.

Build the system.

Test it in the real environment.

Deploy it.

Listen to users.

Improve it.

That final step is particularly important.

A system is never truly finished simply because the developer has completed the code.

The real test begins when people start using it.


Building HOROO Innovations

This philosophy also influenced my journey with HOROO Innovations PLC.

Together with four other founders, we started building a local technology company around a simple idea:

Solve real problems with practical technology.

Building a company is very different from building a demonstration project.

A demonstration can work for five minutes.

A real system has to survive real users.

It needs:

And ultimately, people need to trust it.

That experience has changed the way I think about software.


Why I Am Sharing More Now

I have spent much more time building than talking about what I build.

Now I want to change that.

Not because I want to become a social media personality.

But because I believe there is value in documenting what we are learning while building technology in Ethiopia.

There are many important technology problems around us.

And many are a combination of all of them.

And I want to show what it actually looks like to build and deploy software in the real world.


The Principle I Keep Coming Back To

That principle will continue to guide my work as a software engineer, digital health systems architect, and Co-Founder & CTO of HOROO Innovations.

Real problems.
Practical solutions.
Real-world impact.

And now, I am going to start documenting the journey.

— Haji Omer Sheno