In Indonesia, the term software house is used for almost any company that builds applications for clients. Outside the country the same business is more often called a software development company or a development agency. The name matters less than what is behind it, because companies using it range from two freelancers sharing an office to teams of a hundred engineers with formal processes. This article explains what a software house actually does, who works in one, how the work is usually organised and charged, and how it differs from other kinds of IT vendors, so you know what to expect before the first meeting.
The Short Definition
A software house is a company that designs, builds, and maintains software for other businesses, made to fit their processes rather than sold as a ready-made product. The client brings the problem, for example an approval process that still runs on spreadsheets and WhatsApp, a customer app, or two systems that do not talk to each other. The software house turns it into working software, and usually keeps it running afterwards.
The key difference from a software product company is who owns the result. A product company builds one application, such as accounting software or an HR system, and sells subscriptions to many customers. A software house builds something specific for each client, and under a proper contract the client owns the source code.
What a Software House Builds
- Web applications and internal systems: dashboards, ERP modules, inventory, approval workflows, customer portals, and admin panels.
- Mobile applications for Android and iOS, either native or cross-platform with Flutter or React Native.
- Backends and APIs that power web and mobile apps, and the databases behind them.
- Integrations between systems, such as connecting an ERP to a marketplace, a payment gateway, the WhatsApp Business API, or a government service.
- Cloud setup, deployment, and monitoring, so the application runs reliably after launch.
- Maintenance and further development: bug fixes, security updates, and new features once people are using the system.
Many software houses also build company websites, but if a website is all you need, a web agency or a good WordPress developer is often the better fit. The strength of a software house is in applications with business logic, users with different roles, data that must be correct, and integrations.
Who Works in a Software House
| Role | What they do in your project |
|---|---|
| Project manager or product owner | Your main contact. Plans the work, tracks progress, and manages changes in scope |
| Business or system analyst | Translates how your business works into requirements, user flows, and data structures |
| UI/UX designer | Designs screens and flows, usually as clickable prototypes you can test before coding starts |
| Frontend and mobile developers | Build what users see and touch in the browser and on phones |
| Backend developers | Build the business logic, APIs, database, and integrations |
| QA engineer | Tests features, writes test cases, and checks that fixes do not break other parts |
| DevOps or cloud engineer | Sets up servers, deployment pipelines, backups, and monitoring |
In a small software house one person often covers two or three of these roles, which is fine as long as every role is covered by someone. The roles most often skipped to cut costs are the analyst and QA, and those are exactly the gaps that later show up as features that do not match how the business works, or bugs found by customers.
How a Project Usually Runs
- 1Discovery. A few meetings or workshops to understand the problem, the users, the existing systems, and what success looks like.
- 2Proposal and estimate. Scope, timeline, team, and price, ideally with the assumptions written down so both sides know what is and is not included.
- 3Design. Requirements, user flows, and prototypes that your team reviews and approves.
- 4Development in short cycles, usually one or two weeks, with a demo at the end of each so you see progress on real software rather than in reports.
- 5Testing and user acceptance testing (UAT), where your own staff try the system with real scenarios before launch.
- 6Launch, data migration, and training for users.
- 7Warranty and maintenance. A warranty period for defects, followed by a maintenance agreement for updates, monitoring, and new features.
We describe each stage in more detail, including what the client is expected to prepare, in our article on the stages of building an application.
How Software Houses Charge
- Fixed price: one price for an agreed scope. Good when requirements are clear and stable. Changes go through a change request with its own cost.
- Time and material: you pay for the hours or days actually worked. Good when the scope will evolve, as long as you get regular reports and can stop at any time.
- Dedicated team: a team works only on your product for a monthly fee, and you set the priorities. Common for long-running products.
- Maintenance retainer: a monthly fee for support, updates, and a fixed number of hours of small changes after launch.
The price depends far more on scope and complexity than on the number of screens. Roles, approval rules, integrations, reports, and data migration usually take the most time. Our articles on custom software cost and on fixed price versus dedicated teams go into how to estimate a budget and choose a model.
Software House vs Other IT Vendors
| Type of vendor | Main job | Who owns the result | Fits when |
|---|---|---|---|
| Software house | Builds and maintains custom applications | The client, if the contract says so | You need software that fits your own process |
| Digital agency | Branding, websites, campaigns, social media, and digital marketing | The client owns the creative work, usually | The main goal is marketing and brand presence |
| IT consultant | Advises on strategy, architecture, vendor choice, and audits | Reports and recommendations, not usually software | You need an outside view before deciding or buying |
| System integrator | Implements and connects existing products such as SAP, Odoo, Microsoft, or network infrastructure | Licences stay with the product vendor | You have chosen a ready-made platform and need it rolled out |
| IT staffing or outsourcing firm | Supplies developers who work under your direction | You, since your team directs the work | You already have technical leadership and only need more hands |
| Software product company | Sells subscriptions to one application | The vendor keeps the software, you rent access | A standard product already covers 80 percent of your needs |
The lines are not strict. Some software houses also do integration or staffing, and some agencies have development teams. What matters is to ask which of these jobs the vendor is really strongest at, and who will carry responsibility for the outcome: the vendor, or your own team.
When You Need a Software House, and When You Do Not
A software house makes sense when your process is a competitive advantage or simply too specific for off-the-shelf software, when several systems need to be connected, when you want to own the application and its data, or when you are building a digital product for your own customers. If a SaaS product already covers most of what you need, subscribing is usually faster and cheaper, at least at the start. We compare the two in our article on custom software versus ready-made software.
A freelancer can be a good choice for a small, well-defined job. The risk grows with the size of the project, because one person is a single point of failure for holidays, illness, and knowledge. An in-house team makes sense once software is central to the business and there is enough continuous work to keep several engineers busy, which is a later stage for most companies.
Common Misunderstandings
- The work is finished at launch. In practice, launch is when real users start asking for changes, and operating systems, libraries, and security requirements keep moving. Budget for maintenance from the start.
- The software house automatically gives you the source code. Ownership of the code, the repository, and the server accounts must be written in the contract. Ask for access to the repository from the first week.
- More developers means faster delivery. Past a certain size, adding people to a project slows it down, because they need onboarding and coordination. A small, stable team usually delivers more.
- A detailed requirements document removes all risk. Requirements help a lot, but some needs only become clear when people use a working version. Short cycles with regular demos catch these early.
- The cheapest quote is the best deal. A quote far below the others usually means something is missing: testing, documentation, a realistic timeline, or the analyst role. Compare what is included, not only the total.
Software Houses in Indonesia
Most Indonesian software houses are in Jakarta, Bandung, Yogyakarta, Surabaya, and Malang, cities with strong universities and a steady supply of engineers. Since remote work became normal, the location of the vendor matters less for day-to-day work. It still matters for being able to meet in person during discovery and UAT, for working in the same time zone and language, and for understanding local requirements such as e-invoicing, payment gateways, and the Personal Data Protection Law.
Questions to Ask in the First Meeting
- Have you built something similar, and can we see it or talk to that client?
- Who exactly will work on our project, and will they stay until the end?
- How do you handle changes in scope, and how are they priced?
- How is the work tested before we see it?
- Who owns the source code, the repository, and the server accounts?
- What happens after launch: how long is the warranty, and what does maintenance cost?
For a fuller checklist, including warning signs to watch for, see our guide on how to choose a software house.
A good software house does not start by asking how many pages you need. It starts by asking how your business works today, and what should be different once the software exists.
PT Salamun Teknologi Indonesia is a software house based in Bandung that builds web and mobile applications, system integrations, and cloud infrastructure for companies across Indonesia. If you are still at the stage of figuring out what you need, a discovery conversation with us does not commit you to anything.
Key takeaways
- A software house designs, builds, and maintains custom software for other companies, and the client should own the source code.
- A complete team covers project management, analysis, design, frontend, backend, QA, and DevOps, even if one person holds several roles.
- Projects usually run through discovery, proposal, design, short development cycles, UAT, launch, and maintenance.
- Pricing models are fixed price, time and material, dedicated team, and maintenance retainers, each suited to a different level of certainty.
- A software house differs from a digital agency, IT consultant, system integrator, staffing firm, and SaaS vendor in what it delivers and who owns the result.


