Hello folks!
My name’s George - I run Not Quite Unicorns, a new low-code development agency based in the UK but serving clients around the world for the last 6 months or so. After successfully working with these clients, I’ve decided to take the agency in a different direction. I’ve been working to see how no-code development can be streamlined and improved after identifying a lot of pain points from both clients and other agencies or freelancers.
Is this just an ad? Depends who you ask! I’ll probably speak to a few clients as a result of this post, but it is mainly for other freelancers + agencies interested in pursuing a similar model for themselves. If it feels like a compelling sales pitch, then that should be enough to make you consider implementing it yourself I’m putting this here as a resource and perhaps a post for discussion so that freelancers/agencies/clients can all improve how they work and increase satisfaction for all stakeholders.
So, what am I doing? Fully productising Bubble development from initial build to ongoing development. Fixed prices for everything, fixed timelines - yet with even more flexibility than standard agencies.
The measurable results of this model are:
- Hire conversion rates (as clients know exactly what they’re paying before they even meet you)
- Better client satisfaction (the whole process is so much more efficient after cutting out bureaucracy)
- Better developer experience (less time scoping, negotiating, and other admin - more time working directly on an app)
- Faster launch and more agile development (pre-defined budget limits the project scope and forces founders to launch lean and then expand based on user feedback)
The structure of this post is as follows:
- break down the problems with no-code development freelancer/agency structures right now
- explain why I building any app for $10K
- explain why unlimited development subscriptions are a great option in low-code development
- explain how this works as a multi-developer agency
- job opportunities / hiring
Throughout this post I’ll use no-code and low-code interchangeably so don’t get thrown off by that.
What’s wrong with no-code development now?
The no-code development landscape consists of two main types of workers - freelancers, who do everything themselves or sometimes subcontract for small items, and agencies, who have a moderately sized or large team of people working on apps.
Too much bureaucracy - Bureaucracy
- Scoping takes too long and is a pain in the ass for clients and agencies.
- You talk with the client, write a detailed scope, send it, only to find their budget is half what you expected and they want twice as much included.
- From the client perspective, you have to enter talks with many agencies, and it can even take weeks to get from initial contact to final scope and quote.
Lack of flexibility - Flexibility
- I’ve seen too often from talking to members of the forum and from clients that a client will have a vision for their app, and build it out, only to discover the customer wants something slightly different.
- By this time, the app has already been built, and the money has been spent.
- Want development after the launch of your app? You probably have no idea how much that’ll cost until it actually happens and can find yourself paying way more than you expected.
Assessing quality of agencies and freelancers - Quality
- It’s really hard to assess how good an agency is if you’re not proficient with Bubble yourself.
- They might have a pretty front end with poor database design or build up technical debt by taking shortcuts. I learned this seeing some pretty templates on the marketplace which had zero privacy rules and very strange database structures / workflows. I’ve seen 7 figure VC funded companies who hired freelancers (and even agencies) with zero privacy rules configured and inefficient workflows.
- Some agencies will rigorously stick to their pre-designed templates or frameworks so they will guide clients towards a specific feature/implementation when the client wants something else. For example, some templates do database searches to create a header menu for the sake of building efficiency which means the header doesn’t load immediately with the page. Whilst there’s a place for templates, they should be kept lean and they should never be used to try and mould a client’s vision to fit your pre-existing template.
- If you look for freelancers on the forum, you end up with like 20 DMs from people that barely speak your language and have no profile or forum activity so you don’t even know where to start…
Too expensive, not lean - Price
- No-code development is still too expensive, even though it’s way cheaper than traditional development
- No Bubble MVP has any business being more expensive than $25K even if you’re working at $100/hr. Seeing agencies offering pricing ranges into the 6-figure range is absolutely wild. What are you paying for? Things you didn’t ask for but got anyway - wireframes, designers, UI assemblers, QA, project manager… (more on that later)
- These overheads jack up the price immensely when it’s not necessary. Pretty much all Bubble developers can assemble UI themselves. Design is a little different - for example, actually ‘coming up’ with designs isn’t my strong point but I can replicate them perfectly well, so I subcontract design if it’s really necessary. But most apps have simple dashboard or listing pages where there’s so much inspiration on sites like Dribbble that you can just replicate it yourself in Bubble.
The pain points of ongoing development
There are a few problems for clients with respect to how ongoing work occurs in no-code development:
- costs unclear until you request a quote for a new feature / update
- if you get a retainer it’s a significant outgoing for a service that you might not even use
- lots of admin and discussion required for each part of ongoing work (can be like doing a lot of mini-scopes)
- request → scope → quote → (negotiate) → confirm → implement → feedback → deploy → get paid
Build any app in two weeks for $10K.
How am I trying to solve this?
- I will build any app for $10k. It’s dead simple. Improving: Price and Bureaucracy.
- Clients know the price up front, there’s no missed expectations, and you filter out anyone with an unreasonably low budget so that you can focus on a smaller number of high ticket clients.
- I hear you - “but George, some apps will take way more time than can be justified by $10k!”. I respectfully disagree. Any app can be slimmed down enough to create an MVP. It might not have every feature you initially wanted immediately, but that’s not a bug - it’s by design, which leads me onto the next point.
- Design the scope to meet a pre-set price, not the other way around. Improving: Price, Flexibility and Bureaucracy.
- This pricing model encourages lean development. It encourages clients to deploy their product/internal tool/web app and get feedback from real users. The client can then get feedback from these real users to either validate or modify the product offering. If it fails, it fails more cheaply, and if it succeeds, you get explicit guidance on which direction to take the development in. Improving: Price, Flexibility and Bureaucracy.
Unlimited development, pause/cancel anytime
For ongoing work, I’m now moving to an unlimited development model (similar to designjoy.co for example). Unlimited development? How does that work?
The model works like this:
- Client requests app for $10K. Define the exact project scope with client and build within 2 weeks.
- If they need ongoing work to extend the app, the client subscribes to a monthly ongoing development plan.
- Client can pause/cancel any time
- The client can make unlimited requests
- Only a certain # of requests are worked on at one time
- Average turnaround of 24 (business) hours for data/text changes, 48 hours for features and sections, and 72 hours for pages or complex features. Of course, larger updates can be completed as fast as can be reasonably accomplished.
- Client adds request to queue → Implement request → Client approves request → If good, deploy, if needs revisions, revise. As soon as a client approves the request, the next request in the queue will begin work.
- request → implement → feedback → revision or next request
This is a model that is uniquely possible in low-code/no-code development. That’s purely because low code facilitates low turnaround times as it is efficient, and there’s really only one developer working on an app at the time. Compared to traditional code, you don’t need to consult with everyone else working on the project to ensure no breaking changes.
This model requires the following from the freelancer/agency:
- fast turnaround times, so the client gets their money’s worth
- ability to work on assumptions - there’s no point doing this if you have to ask your client about every little detail. You’ve worked on dozens of projects, you have a grounding in the real world - you can work out what they need and only ask for clarification if really needed.
- design competence - there’s no wireframing or prototyping here unless the client explicitly asks for it. Just do it. Create it, do a good job, and you likely won’t need any revisions. We avoid designs and wireframes unless the client asks for it as we should understand their vision enough to make reasonable assumptions about what they ask for. For complex pages, we design it in Bubble and send a quick screenshot for approval by the client.
- all rounder - let’s say a client wants a ‘how it works section’. They might not specify the exact specific features or the exact wording of this section but you should be sufficiently well acquainted with the app, its users, and the client to know which features to highlight and give your best shot at the wording, because most of the time it’s good enough.
- be good - if your client needs revisions every time, it will be inefficient and no better than traditional pricing models. Get it right first time.
It requires the following from the client:
- ability to explain the request clearly so no follow-ups are necessary most of the time
- common sense when planning whether a specific request is a minor change / a feature / a page/complex feature
You might argue that there’s a conflict of interest - the slower the developer is in turnaround times, the less work they have to do and the client pays more for less. However, if this happens, the client will just unsubscribe or pause their subscription (because the subscription is completely flexible). The developer is interested in retaining each client for as long as possible, so will strive to provide the best possible value.
Why flexible subscriptions are important
Is this a retainer? No. There’s no minimum terms. No obligations on the client’s part. If the client doesn’t have any work to do on their app they can pause their subscription in a click or two and save it for a time they do have work. If they’re finished with the development, they can cancel it.
There’s no risks for the client and they get development on demand. The developer also grows a defence against the feast/famine problem.
Scaling as an agency
Currently, NQU is just me and anyone I choose to subcontract for short term work. I am only taking on a limited number of clients myself as otherwise the workload becomes too great and you cannot offer each client the perfect service they deserve.
However, I do want to extend my offering to more clients as I believe that it’s great value for them whilst being better for myself - it’s just better to work with a smaller number of higher value clients.
To extend this model to a multi-member agency:
- each developer is assigned to a particular client. No project managers, designers, UI assemblers, or other wastes of space. Client talks directly to the person working on their app. Save time for the client and developer and reduce miscommunications.
- the developer must be competent and able to operate independently. It’s all about hiring a developer that does not need to be watched carefully as they can be trusted to deliver a quality product.
Closing Thoughts
For those of you considering joining the NQU team, know that our primary emphasis is on quality, communication, and adaptability. We’re looking to build a team of forward-thinking developers who are excited about the future of no-code and are eager to shape it.
To all the freelancers, agencies, and aspiring app developers reading this (well done for making it this far), whether you agree with my perspective or not, I’m keen to hear your thoughts, even if you wildly disagree!