Skip to content
All posts
Engineering/February 14, 2026/Omar Majed

Building Software With Integrity: The SaaSTEMLY Way

We are not the cheapest agency. We are not the fastest. But we are the one that picks up the phone six months after launch. Here is how we build software, why we do it the way we do, and what happens when you actually care about the code you ship.

Team of developers working together on computers in a modern tech office

Every software agency has an origin story. Some start in a garage. Some start in a dorm room. Ours started in a group chat where three friends kept saying "we could build that better" every time we saw a poorly made website. Most people say that and then go back to scrolling. We said it and then actually opened a code editor. In hindsight, the group chat was cheaper.

SaaSTEMLY was born from a simple frustration: businesses were paying premium prices for mediocre software. Agencies were charging by the hour with no incentive to finish. Developers were shipping code they would not want their name on. And clients — the ones writing the checks — had no way to tell the difference between a well-architected system and a house of cards held together by StackOverflow answers and prayer.

We decided to build an agency that we ourselves would want to hire. Which, as it turns out, is a surprisingly high bar. We call it The Would-We-Hire-Us Test. Every proposal, every architecture decision, every line of code gets filtered through it. If the answer is "honestly, no" — we go back to the drawing board. It has saved us from shipping bad work more times than we would like to admit.

Our Values (The Real Ones, Not the LinkedIn Ones)

Every company has values on their website. Most of them are variations of "we are innovative" and "we put the customer first" — which is the corporate equivalent of a dating profile saying "I love to laugh." Technically true. Completely meaningless.

Here are our actual values. The ones that cost us money. The ones that make us turn down projects. The ones that keep us up at night when we almost violate them.

Innovation That Solves Problems, Not Resumes

We love new technology. We are genuinely excited about it. But we do not use Kubernetes for a five-page marketing site just because it looks impressive on a case study. Our stack choices are driven by the problem, not by what is trending on Hacker News.

For Kamerly — a room rental platform in the Netherlands — we chose Vue.js, Node.js, and PostgreSQL. Not because they were the newest or the coolest, but because the platform needed real-time messaging, complex search queries, and Stripe integration. Those tools were the right fit. The project ran for 8 months with a team of 6 and delivered a 30% increase in successful bookings.

For Reco Medical — a healthcare research showcase in the UK — we used Svelte, SvelteKit, and Sanity CMS. The site needed to be fast, SEO-optimized, and compliant with healthcare accessibility standards. We built it in 2 weeks with a team of 3. Not 2 months. 2 weeks. Because the right tool for the job finishes the job faster.

We call this Technology Empathy — the ability to choose tools based on the project's needs rather than the developer's preferences. It is surprisingly rare. And it is surprisingly hard. Your brain wants to reach for the familiar. Empathy says "this project needs something different."

Quality Over Everything (Yes, Even Speed)

We have lost bids because our timelines were longer than competitors. We have had clients ask "why can't you do it in two weeks like Agency X?" The answer is: we can. But Agency X's version will break the first time someone in Qatar tries to use it in Arabic, and ours won't.

Every project we ship supports three languages out of the box — English, Arabic (RTL), and Spanish. Not because every client needs it, but because building for internationalization from day one costs 10% more upfront and saves 300% in retrofitting later. We have done the retrofitting. We have the scars. We refuse to do it again.

Quality also means our headers do not have scroll listeners. Our color systems use OKLCH. Our authentication handles hydration mismatches gracefully. These details are invisible to clients and priceless to users. If you have read our other blog posts, you know we obsess over these things. If you haven't — go read them. We will wait. We wrote them at 2am so you would not have to.

Integrity, Even When Nobody Is Checking the Code

Here is a secret about our industry: most clients will never read your source code. They will never know if you used TypeScript or JavaScript. They will never check if you wrote tests. They will never audit your dependency tree.

We write clean code anyway. Not because someone is watching, but because sloppy code is a ticking time bomb, and we refuse to hand a client a product with the fuse already lit. Every variable is typed. Every function has a clear purpose. Every commit message explains why, not just what.

We call this The Empty Room Test: would you write this code the same way if you knew nobody would ever review it? If the answer is no, you are writing code for approval, not quality. We write code for empty rooms.

Collaboration, Not Just Communication

There is a difference between sending a client a weekly status email and actually collaborating with them. The email says "we are on track." Collaboration says "we noticed this feature might not work the way you imagined — here is what we found, here are three alternatives, and here is our recommendation."

Our milestone-based workflow ensures clients see real progress, not just promises. Every milestone ends with a deployment they can test. Every deployment includes a review session where the client can poke, prod, and say "actually, I wanted it to wobble slightly when you hover over it" — and we will make it wobble.

Where We Are Going (And Why)

Our mission — and I promise this is not the sanitized investor pitch version — is to empower businesses with technology that actually works. Not technology that works in the demo. Not technology that works on the developer's MacBook Pro. Technology that works when a real human in a real country on a real device at a real bandwidth tries to do a real thing.

We have built across every continent and nearly every industry. A logistics platform in Egypt processing over a million orders monthly. An educational management system for Newcastle University that improved student engagement by 70%. A real estate platform in the Netherlands. A medical research site in the UK. A fashion e-commerce platform. A coffee shop ordering system in Norway. A personal portfolio in France. An open-source developer tool used globally.

Each project taught us something. Mylerz taught us what happens when you scale to a million orders a month. Newcastle School taught us that universities move slowly but think deeply. Kamerly taught us that real estate platforms are just dating apps for apartments. Norbrok Kaffe Bar taught us that you can build a complete ordering system in a week if you use the right stack and do not overthink it.

The pattern across all of them: understand the problem first. Write code second. Ship something testable third. Polish fourth. This order matters. Reverse any two steps and you get a project that looks done but is not, or works but nobody can use.

How Working With Us Actually Works

I am going to describe our client flow in detail, not because it is revolutionary, but because transparency is free and most agencies treat their process like a state secret. Our flow has seven phases. Each one has a clear purpose and a clear exit condition. No phase is optional.

Phase 1: You Tell Us Your Idea

You submit your project idea. It can be a napkin sketch. It can be a 40-page PRD. It can be a voice note recorded at 11pm after your third coffee. We have seen it all. The format does not matter. What matters is the core problem you are trying to solve.

Phase 2: We Figure Out If We Understand Each Other

If the requirements are clear, great — we move to a detailed discussion. If they are not, we schedule a meeting. Not a sales call. A real meeting where we ask uncomfortable questions like "who is actually going to use this?" and "what happens if this feature is harder than you think?" We keep meeting until the requirements are clear. This phase has no time limit because shipping the wrong thing fast is worse than shipping the right thing slowly.

Phase 3: The Scope of Work

We produce a detailed scope document. It includes features, milestones, timelines, technologies, and — critically — what is not included. The "not included" section prevents 90% of scope creep arguments. If it is not in the document, it is not in the project. If you want it in the project, it goes in the document first. This is not bureaucracy. This is how adults work.

Phase 4: Milestone Work Begins

Projects are broken into milestones. Each milestone is a deployable, testable, demo-able chunk of functionality. You pay for each milestone before work begins. This protects both sides: you never pay for undelivered work, and we never build without confirmed commitment.

We build. We deploy. We show you progress. This is not a three-month black box where you hear nothing until launch day. You see real features on a real URL. If something is wrong, you see it early. Bugs caught in milestone 1 cost 10x less than bugs caught in production.

Phase 5: You Review Our Work

After each milestone, you review. Three outcomes are possible: it is perfect (rare but it happens), it needs minor changes (we fix those for free — included in the milestone), or it needs major changes (we scope and quote those as additional work). Notice there is no fourth option where we argue about whose fault it is. If it needs changing, we change it. Blame is not a deliverable.

Phase 6: Final Review and Handoff

When all milestones are complete, we do a final review. The entire project is examined end-to-end. Final payment happens here. You get the code, the documentation, the deployment credentials, and a team that does not ghost you after the last invoice.

Phase 7: Maintenance or Next Phase

After launch, two paths diverge. Maintenance: we keep the lights on, fix bugs, apply security patches, and make minor improvements. Or Next Phase: you have new features in mind and we start the cycle again from Phase 1. Most of our clients end up on both paths simultaneously. They want the current version maintained while we build the next one. This is the sign of a healthy partnership.

The People Behind the Pixels

We are a distributed team across four countries — Denmark, UK, Egypt, and Italy. Our co-founders have been working together since 2020, which in startup years is roughly equivalent to a golden wedding anniversary.

Omar Majed, our COO, has over 4 years in business management and software development with a double major that lets him look at businesses with consultant's eyes. Omar Khorshid, our CMO, blends finance, software, and data-driven marketing to architect growth strategies that actually convert. And Mahmood Ibrahim, our CTO, is responsible for converting client requirements into production-ready software — which is a polite way of saying he turns "can you make it pop" into actual TypeScript.

Our engineering team includes specialists in AI (Kareem Ayad leads our AI division, building RAG systems and LLM fine-tuning frameworks), fullstack development (Amr Elskhawy brings scalable solutions to every project), and product analysis (Omar Mazhar ensures what we build is actually what clients need). On the business side, Tawfik Hesham manages strategic accounts with 5+ years of sales experience.

We are small enough that everyone knows every project. Large enough that nobody is a single point of failure. This is intentional. We call it The Bus Factor Sweet Spot: big enough that if someone gets hit by a bus (metaphorically, hopefully), the project survives. Small enough that no one is anonymous.

The Uncomfortable Ethics Section

Let's talk about the things most agencies do not put in blog posts.

We do not take projects we cannot deliver. If your timeline is unrealistic, we will say so. If your budget does not match your feature list, we will say so. If we do not have the expertise, we will say so and recommend someone who does. We have turned down six-figure projects because we could not deliver them at our quality standard. That hurts financially. But shipping bad work hurts our reputation permanently, and reputation is the only asset an agency truly owns.

We do not hold your code hostage. You pay for it, you own it. Full source code. Full documentation. No proprietary lock-in. No "but our framework requires our hosting" games. If you want to take the codebase and hire your own team tomorrow, you can. We hope you will not, but you can.

We do not pad timelines or invoices. If a feature takes two days, we bill two days. If a feature that was estimated at five days takes two, we tell you and credit the difference. If it takes seven, we explain why and eat the overrun if it was our fault. This is basic honesty. The fact that it is noteworthy in our industry says more about the industry than about us.

We admit mistakes. We have shipped bugs. We have underestimated timelines. We have chosen the wrong technology once or twice. When it happens, we tell the client, we fix it, and we learn from it. The alternative — hiding mistakes and hoping nobody notices — is a strategy with a 100% long-term failure rate.

Our Work, By the Numbers

Rather than telling you we are good, here is what the projects say:

  • Kamerly (Netherlands): Room rental platform. Vue.js, Node.js, PostgreSQL. 8 months, 6 developers. 30% increase in bookings, 95% user satisfaction.
  • Newcastle School (Egypt): Educational management system. Laravel, Vue.js, MySQL. 10 months, 6 developers. 70% improvement in student engagement.
  • Mylerz (Egypt): Logistics platform. React, Node.js, MongoDB. 12 months, 10 developers. 1M+ orders monthly, 40% faster delivery.
  • Reco Medical (UK): Healthcare research showcase. Svelte, SvelteKit, Sanity. 2 weeks, 3 developers. 65% increase in brand awareness.
  • Norbrok Kaffe Bar (Norway): Coffee shop digital platform. Vue.js, Nuxt. 1 week, 1 developer. 200% increase in digital orders.
  • Maqsad Clothing (Global): Fashion e-commerce. Shopify. 2 months, 3 developers. 85% increase in monthly sales.
  • Curlture (Global): Haircare e-commerce. Shopify, SvelteKit. 2 months, 3 developers. 45% increase in product sales.

Some of these took a week. Some took a year. The difference is not quality — it is scope. A one-week project gets the same code review process, the same testing standards, and the same attention to detail as a twelve-month project. The only thing that changes is the size of the scope document.

Why Any of This Matters

If you have read this far, you are either evaluating us as a potential partner or you are one of our developers making sure we did not misrepresent anything. Either way: hello.

The software development industry has a trust problem. Too many projects fail. Too many agencies disappear after launch. Too many codebases are unmaintainable within a year. We do not solve all of these problems. But we solve the ones we can, for the clients who find us, with the team we have.

We are SaaSTEMLY. We build software with integrity. Not because it is a tagline — but because it is the only way we know how to build software that we would actually want to use ourselves.

And that is The Would-We-Hire-Us Test. Passed, every time.

AgencyValuesProcessSaaSTEMLY