Kamari Labs Freelancer Workflow



What does a major car manufacture in Detroit, a bustling startup in Palo Alto or a new coffee shop in Boston have in common?
They all need to develop strong process to prosper.

Working as a freelancer can have it’s advantages and disadvantages. One of the most important tools we have
developed over the last 2 years of service is our own in house freelancer workflow process.
When you think about workflows you think about process, or the steps needed to complete a task.

Overtime we developed an efficient and streamlined process through iteration and improvement.
Once you have established this the freelancing world just got a lot easier to manage.
Without strong process and an optimized workflow things can get out of hand quickly.

Many of the concepts we use here at Kamari Labs are adapted from the Japanese concept Kaizen.
Kaizen is a continuous improvement process used by major auto manufacturing companies to mitigate inefficiencies and maximize productivity and profit.

Kaizen itself simply means “change for the better” however it is the basis of TPS (Toyota Production System) and this is the foundation of
our workflow we are going to demonstrate here in this article.

When you think about design, development or both most people think of the steps to achieve the actual project
as the workflow. However this is not the entire circumference of the project life cycle. This is where we
have focused time and resources fine tuning the meta flows which are often overlooked by design agencies.

Every aspect of your workflow should be well defined and this is not limited to the project steps.
This means from the initial meet and greet with your new prospective client to the final transfer of work and materials you
need a process in place to define how you will execute the work and stick with it only making minor changes along the way to
increase efficiency and thus the Kaizen dynamic is added to your flow.

Project Breakdown

Here are the steps we take to tackle some of the largest projects with precision.

  • Communication

    While this step is often the most overlooked step it is very important to project success. You want to establish your line of communication with the client early on so there is no confusion later on where to send correspondence regarding materials you may need. Make sure you have defined the technical contact of the project and ensure you have several methods of contact to get the things you need quickly from your client. This will eliminate costly delays and project lag.

  • Prerequisites & Materials

    Next determine all materials, images, videos, site copy, wireframes and other related project materials early on. These should be defined in the initial planning phase and communicated to the project manager so they can be obtained before the project starts. If some materials are not available (and they wont be) then identify sections of the project that are dependent and move them into a newer phase. Never start a phase with insufficient materials as this will only lead to delays. It’s better to have a clear path for what you can complete than to have several items that are held up by one.

  • Agreements

    Agreements can be a pain but they are a necessary evil in the service world. Agreement’s let us know what to expect from either party and they can be one of the more time consuming aspects of your workflow because well let’s face it the agreement defines the workflow to some extent.

    Use templates to optimize your agreement generation and signing process. Customize the specific parts and refine the final draft but having a starting point can make worlds of difference in lead time.

    We have software we developed specifically to tackle this part of the workflow, but there are several publicly available tools we use like SignNow, and HelloSign. These tools are great and have APIS allowing us to streamline client on-boarding and project ramp up.

  • Deliverables

    Every good service agreement should have all included deliverables well defined. This allows your client to know exactly what to expect when the project is delivered and you to know what is to be expected. Deliverables are important and it’s worth some extra time to make sure they are well defined.

    When defining a deliverable think about all the required materials needed for delivery (prerequisites) and define them with the given deliverable so it’s easy to define what you will need an when.

    Remember if you don’t have everything you need to begin then your deliverable is not yet deliverable and needs to move to a later phase of have it’s dependencies satisfied.

  • Task Assignment

    Assigning work to your team can be equally time consuming. It’s easy to just let everyone jump in an start chipping away however don’t do this… It’s better to identify tasks and assign them to the right people for the job. If you have a rockstar jQuery developer you wouldn’t want him wasting time populating html pages would you? No. This is an example of an inefficiency and it needs to be eliminated from your process when you see it. Overtime you will optimize it and it will become easier.

  • Payment

    Collecting payment should be defined early on. Depending on how you bill you wan’t this to be abundantly clear to both parties how, when, and where payments will be made and if there are any contingencies on them (e.g. Net 30).

    Getting a good invoicing application like FreshBooks is a good idea to track invoices, payments, estimates, etc. We again developed our in house software to handle much of this for us using the service API’s but each company will be different.

  • Delivery

    Set a deadline for each project to be delivered. By doing this your not only giving your team a deadline but the client as well.

    The client should know when there project will be delivered and how before it ever starts. Without this date in place it’s easy to have project lag and it ultimately is toxic for a projects delivery date.

    Also be sure to check with your client about target delivery dates (if they exist). This will help you in the planning phase to determine what can be delivered in said time and allow phases to be defined for future iterations.

  • Support & Maintenance

    Once a project or service has been delivered it is important to consider maintenance and support for the deliverables.

    In the planning phase it should be defined how support for the project and final deliverables will be addressed.

    This will eliminate technical debt that will ultimately consume a company if not planned for. Be sure you make your support plan clear
    to both parties so you don’t end up with a catastrophe down the road.


Tim Matheson

Tim is a software engineer and computer software consultant based in Newport Beach, CA. He has worked with hundreds of companies implementing custom software-as-a-solution business administration tools. Tim's specialty is streamlining process using software for small to large businesses. When he's not saving the internet from dismal failure he enjoys riding his bike along the beach, and the occasional cup of coffee.

Leave a Reply

Your email address will not be published. Required fields are marked *