The Process Most Founders Don't See Coming
Building an app for the first time feels like a leap of faith. You have an idea, maybe some wireframes, and a budget — but no clear picture of what the next four to six months actually look like. What happens between "let's build this" and "it's live in the App Store"?
After shipping over 100 products since 2012, we've refined a process that removes the guesswork. Here's exactly what a well-run app development engagement looks like from the client's perspective — what to expect, when to expect it, and where your involvement matters most.
Discovery: The Most Important Weeks of the Project
Every project starts with discovery. This is a focused 2-4 week phase where we move from "we understand your pitch" to "we understand your problem well enough to solve it."
Discovery typically includes:
- Stakeholder interviews — Conversations with everyone who has context: founders, department leads, and end users when possible
- User research and persona development — Understanding who will use the product and what they actually care about
- Technical assessment — Evaluating existing systems, data sources, integrations, and constraints
- Scope definition — Breaking the project into phases with clear deliverables
- Architecture recommendations — High-level technical decisions documented and explained
- Project roadmap — What gets built first, what comes later, and why
Discovery should produce artifacts you can use regardless of what happens next. If it feels like a black box, something is wrong.
The most valuable outcome of discovery is sometimes "don't build this yet." We've saved clients six figures by identifying flawed assumptions before development started. That honesty is worth more than any line of code.
How Engagement Models Work
There are three common models for app development, and understanding the tradeoffs matters for budgeting.
Fixed Price
You agree on a scope and a price upfront. This works well for small, well-defined projects — a marketing site, a single-feature MVP, a proof of concept. For larger efforts, fixed-price contracts create friction because software requirements always evolve. We offer fixed-price engagements after a paid discovery phase, where the scope is clear enough to commit to a number.
Time and Materials
You pay for actual hours worked, typically with weekly or monthly estimates. This is the most common model for custom software and the one we use most frequently. It provides flexibility to adapt as you learn, but it requires trust, transparency, and active involvement. Without those, hours can drift.
Retainer
A set number of hours per month for ongoing work. This is ideal for post-launch maintenance, iterative feature development, or teams that need consistent access to development resources. It's not the right model for a net-new build unless the scope is deliberately open-ended.
No model is universally correct. The right choice depends on how well-defined your requirements are, how much flexibility you need, and how involved you plan to be.
The First 30 Days
The first month sets the tone for the entire engagement. Here's what a healthy first 30 days looks like:
Week 1: Kickoff meeting, access provisioning, environment setup, and a deep dive into discovery findings. Everyone should leave week one knowing exactly what's being built first and why.
Week 2: Technical architecture decisions finalized, development environment running, first tasks in progress. You should see the GitHub repository, the project board, and the communication channels — all set up and active.
Weeks 3-4: Initial work is visible and demoable. You're reviewing real progress — working software, not slide decks. The cadence of communication feels natural, and you know who to contact for what.
If you're four weeks in and haven't seen working software — even a rough prototype or a proof of concept — something is wrong. Ask direct questions about what's happening and why.
Communication That Actually Works
Poor communication kills more projects than poor code. At the start of any engagement, align on:
- Cadence — Weekly status meetings are the minimum. Daily standups may be appropriate for fast-moving projects.
- Tools —
Slackor Teams for real-time communication,LinearorJirafor tracking work, and shared documentation inNotionor similar. - Transparency — You should have visibility into what's being worked on, what's blocked, and how the budget is tracking. Full access to the project board is non-negotiable.
- Response times — Establish expectations for how quickly messages get answered during business hours.
We default to weekly syncs with async updates in between, and clients have full access to our project tracking. You should never have to wonder what's happening with your project.
IP Ownership: Get This Right Before You Start
This is where expensive mistakes happen. The key terms to understand:
- Intellectual property — You should own the IP for custom work built for you. "Work made for hire" is the language you want in the contract. We've written extensively about IP agreements every founder should understand.
- Pre-existing IP — Most development teams use internal libraries and tools that predate your project. These typically remain the team's property, and you get a perpetual license to use them. This is normal — just make sure it's documented.
- Source code access — You should have access to the source code throughout the engagement, not just at the end. We use shared
GitHubrepositories from day one so clients can see every commit. - Termination clauses — Understand what happens if either side wants to end the engagement early. How much notice is required? What do you owe? What do you receive?
Have a lawyer review the contract. This is not optional.
Post-Launch: The Part Everyone Forgets to Plan For
Software isn't finished at launch. App maintenance costs typically run 15-25% of the original build cost per year. That covers:
- OS updates — Apple and Google each push major updates annually. Your app needs to stay compatible.
- Bug fixes — No app launches bug-free. The question is how quickly issues get identified and resolved.
- Security patches — Dependency vulnerabilities, SSL renewals, and authentication updates all require attention.
- Feature iteration — User feedback will reveal opportunities you didn't see at launch. Budget development hours for responding to it.
- Infrastructure monitoring — Server costs, uptime monitoring, and performance optimization are ongoing responsibilities.
A post-launch support plan should be part of every engagement — not an upsell, but part of responsible delivery. We define monitoring responsibilities, establish on-call expectations, and create runbooks for common issues before launch day.
Setting the Engagement Up for Success
The best engagements share a few characteristics:
- A single decision maker on the client side. Design by committee produces mediocre results. One person should own decisions.
- Timely feedback. When work is delivered for review, respond within a day or two. Slow feedback is the number one cause of timeline slippage.
- Trust the expertise you're paying for. If you find yourself dictating implementation details, ask whether you're adding value or adding friction.
- Be honest about constraints. If the budget is shrinking, the timeline moved up, or priorities shifted — say so immediately. We can adapt to changing reality far more easily than we can adapt to surprises.
What a Good Outcome Looks Like
A successful app engagement isn't just "the app launched." It's:
- A product that solves the problem you identified in discovery
- Built on architecture that can scale with your business
- Delivered within the agreed timeline and budget
- Supported by a team that sticks around after launch
- Owned by you — code, IP, and all
The founders who get the best outcomes aren't the ones with the biggest budgets or the most detailed specs. They're the ones who stay engaged, make decisions quickly, and treat the development process as a partnership rather than a handoff.