Gearheart works on a time and materials basis. We provide dedicated teams per project. Payments are periodic. Periods are dependent on project size and can vary between one week to a month. Prepayment for the first period is required before development starts.
We use online time tracking and only bill for time actually worked.
Our developers are full-stack with 3-8 years of experience with Django and Angular. We never hire junior developers and all new developers are trained on internal projects before assigning them client projects.
Clients speak with analysts most frequently. The analyst’s job is to understand the product, clarify all details, and prepare a technical specification for developers. From the agile process perspective the analyst is a product owner’s assistant. The analyst’s job it is to make sure that the Backlog is in good shape and that all tasks are clearly defined.
QAs ensure that all functionality of the project is in proper working order before it is shown to the client. With our process, there are two types of manual testing:
There are no dedicated managers on the team. We have a well-defined process and there is little improvisation during a project. A dedicated person from the project team will handle all management tasks, that person is usually either an analyst or a developer.
We outsource the majority of html coding tasks to our partner companies in order to reduce the budget. All of our developers are experienced html/css coders, so they often participate by doing the smaller tasks to save time in communication.
We focus on development. We do not provide design services, but are happy to recommend excellent designers or collaborate with a client’s designer.
Please feel free to contact us if you need any clarification, or if you would like a quote on your project.
Our development is organized in weekly sprints. Payment schedules are independent of sprints and development. This system has proven to be more convenient for both our clients’ and our own accounting systems.
When a project begins we agree on the team structure and a periodic payment schedule. The project specifics will determine how the period varies - from one week to a month.
Prepayments are made at the beginning of the period. At the end of the period we provide a detailed report on work completed and hours expended. Payment overages extend into the following period.
We provide our developers with clearly defined tasks and clients receive well-tested code. To ensure this happens for each project we provide a team. For example:
As long as there are enough tasks on the project, the team is working full time only on that project.
Django ORM is a very abstract and flexible API. But if you do not know exactly how it works, you will likely end up with slow and heavy views, if you have not already. So, this article provides practical solutions to N+1 and high loading time issues. For clarity, I will create a simple view that demonstrates common ORM query problems and shows frequently used practices.