Flow Canon Work with us

Hire two world-class Django devs in less time than it takes to explain your project

You just found your turn-key Django dev team

Python Django Docker Vue.js Tailwind

You want results, not résumés

Why wait two to six weeks to hire a developer? We're ready to start working on your project today, and you don't have to pay extra for benefits.

We keep it simple

No contracts

Cancel your subscription at any time

No meetings

Communication is centralized in GitHub. Everyone can see at a glance what we're working on and what we've shipped.

Have a slow month, or going on vacation?

Pause the subscription, use the rest of your paused month when you return. We'll even send you a reminder 5 days before renewal to make sure you really want to renew.

Half measures are as bad as nothing at all

The first project I worked on years ago was so poorly managed that it took two weeks to get it running on my laptop. Ever since then, I've always crafted tooling for developers to get the project up and running immediately, without any other cognitive overhead, so everyone can get started delivering value.

Wade Williams, Founder at Flow Canon
Wade Williams Founder at Flow Canon

Bringing on a new dev should be easy, and we make it so. We've rescued projects that were unmaintained or had no active team members.

We've been working with Django since version 1.1, and with websites and web apps for a decade before that. We know the technology side of things inside and out.

If you don't have developer tooling and a world class README that explains how to get the project running in moments, we'll create that as a part of our first PR.

With every PR we make, we seek to improve the overall state of the project in addition to simply accomplishing the task at hand. We'll refactor, add tests, and improve documentation as we go.

Apply the Flow Canon to your project

We've developed patterns through years of experience that help our colleagues move faster and deliver higher quality code.

Developer tooling

We'll set up a bootstrap command that gets the project up and running immediately, without any other cognitive overhead, so new developers can get straight to work. Your existing team will love this too, since we'll add all the tooling necessary to manage local environments with the stroke of a few keys. If you're already using docker, or want to start, we'll make sure your application docker files are cache optimized for the fastest build times.


Let's face it, pip was never meant to be a package manager. We'll use poetry to manage your dependencies. If you haven't used poetry yet, you're in for a treat, and your team will love it too. It's a huge improvement over pip and requirements.txt, it's far faster, and it's more reliable.


Our philosophy is that python code should have 100% test coverage. Now, we're not dogmatic about it, but we'll start increasing test coverage when we start, with the goal of eventually getting to 100% coverage. If you haven't worked this way in the past, you'll be amazed at how much more confident you'll be when making changes to your codebase. Also, 100% coverage doesn't necessarily mean that all of the code is actually tested, it simply means that all of the code is run during test runs. We'll help you get there.

GitHub Actions & Releases

GitHub actions are snazzy, and if you don't already have them setup, we'll work towards setting up a continuous integration workflow that runs your tests and linters on every PR. We'll also set up a weekly action to keep your dependencies up to date. If you're already using GitHub actions, we'll make sure they're running as efficiently as possible. We've also built actions to automatically tag, release, and update your CHANGELOG based on pull requests or commit messages.


Software needs to be maintained, and over time even the most pristine implementation will eventually turn into technical debt with enough years of neglect. When we work on your project, we'll pragmatically refactor and improve the architecture as we go. We'll also let you know when we think it's time to make a larger investment in refactoring, and we'll help you plan for it.

Hiring two experts costs less than you might think

Megabyte package

  • One concurrent request
  • Turnaround time in days, not weeks
  • Pay by credit card or ACH
  • Pause or cancel anytime in less than a minute

Gigabyte package

  • Two concurrent requests
  • Turnaround time in days, not weeks
  • Pay by credit card or ACH
  • Pause or cancel anytime in less than a minute

Terabyte package

  • Two concurrent requests
  • Turnaround time in days, not weeks
  • We'll manage your production infrastructure
  • Pay by credit card or ACH
  • Pause or cancel anytime in less than a minute

Want to talk with us first?

Learn more about how we work and how we can help you during a free call.

Unsure? Let's remove all risk for you

Within the first 3 weeks of your initial month, if you're not completely satisfied for any reason, just let us know, and we will refund your fee and cancel your subscription. That's something you wouldn't get from a full-time employee or some random freelancer.

Steve and Wade have been incredibly valuable to our engineering team. Both are highly skilled programmers, but their contributions extend well beyond writing great code. Steve's focus on efficiency, innovation, and attention to detail makes him a true craftsman. While Wade's range of expertise from Python to Product Management means he can cleverly balance speed with quality in everything he ships. Together, they complement each other well and are a reliable and effective team. Their collaborative work has absolutely helped us move both faster and smarter - a powerful combination. Highly recommend.

Grey Garner, VP of Product at Gun.io
Grey Garner VP of Product at Gun.io

It's not you, it's us

Let's be honest, this way of working isn't for everyone. If you really need your developers to be in recurring meetings, or you need to have invoices with line items and hourly breakdowns, we're not a good fit.

Also, while we're amazing at Django development, we are highly opinionated when it comes to our full stack tooling. In 2024, the technologies we prefer are, in our opinion, the best available, so as long as you're open to eventually transitioning to them, we'll get along great.

Depending on the complexity of the front-end, we use either pure Javascript, Alpine.js or Vue. So if you're still in love with your Angular, React, Backbone, or jQuery code, we can help with your Django bits, but not so much with your front end. If you need us to wrangle your pythons, it could still work.

Likewise, we exclusively use TailwindCSS and will eventually transition your project to it. If that's out of the question, we're not a good fit for your front end work.

We use Docker for development and our production environments. If you think Lando is a good idea, or don't want to use Docker, we're not going to work on your production environment, or your development environment, so it's not going to work.

Your questions answered

How many hours do I get each month?

We don't bill by the hour, and we don't track hours. We found it to be a very inefficient and unpredictable way of working with clients.

You might find some freelancer on Upwork for $35/hour and think "I could hire them at the same price and get 200 hours of work!" But that's like comparing apples to oranges.

Our focus is on delivering results at a consistently high level of quality and as little risk to you as possible. Without that high bar of quality, more hours of work just means more code to fix in the future.

We know hourly billing is entrenched in this industry, and this may require a mental leap you're not yet comfortable with. That's why we offer the money-back guarantee. Try it out and see for yourself.

Well then, how many issues will you finish each month?

This is a tough one to answer because issues can be of wildly different complexities. “Improve validation on our checkout page” is much different than “Build an integration with this third-party API”.

While we can't tell you how many issues we'll finish (and that's not really an interesting metric anyway), we can guarantee that you will get a steady stream of updates and progress from us. No more dealing with developers that “go dark” for weeks or months at a time.

Each week we will ship something of value to you. Larger issues will be split and delivered progressively to improve communication and collaboration, and to make sure you are getting consistent value out of our relationship.

Can you join our daily standup

No. We keep meetings to an absolute minimum. It's one big reason we're as efficient as we are. But don't worry, you'll know exactly what we're working on at any given time.

But what about a weekly check in call?

As with the daily stand-up, the answer is also "no". We've streamlined our process and made it completely transparent, so routine communication and check-ins are unnecessary. It's better this way!

I really need to explain something to you though.

Totally fine! We love context and knowing more about what you'd like us to build. Record a short video clip using Loom, or any other tool you like, and link it in the GitHub issue. If something is still unclear, we'll set up a brief chat as needed. We're not completely stubborn. 😄️

Can I call you if my site goes down?

We only offer emergency support for Terabyte subscribers. If we manage your production infrastructure, you won't have to call us if your site goes down, because we'll be alerted as soon as it happens and will be working to fix it immediately.

We don't use GitHub. Is GitLab, Bitbucket or Trello ok?

We definitely prefer to work with GitHub. Part of our efficiency comes from having a repeatable and well-documented process. But if your team already has a different tool in place, we can be flexible and adapt our process to your workflow.

But hey, if you've been meaning to move to GitHub anyway, maybe now is a good time. We can even help you with the transition.