- To create intuitive and easy to use (and stable) software
- Provide awesome support
- Understand client needs better than anybody else
Minimal development skills
Git 6mo+, SVN (optional but nice to know)
Using a debugger such as xdebug
Before you start working on a project you need to create a private bitbucket repository for the project and invite us to it with write access so we can see progress and the direction it’s going and apply fixes if necessary. After the project is done we’ll need the project transferred to our account.
Posing the job
We post a job offer online which is usually upwork. We may invite people who have already worked with and also let other people to bid on the project as well.
When you contact us please include links (github/bitbucket or zip) to a code that you personally wrote. We may ask you on a audio/video call to explain why and how you did it.
The tasks/projects usually start with small scope & budget.
The reason is that we want to test the waters to see if anyone would like the feature before investing in its development. That’s why the tasks/projects are small & minimalistic.
This will happen. During the development we will see how the project is progressing and WILL need extra fixes that weren’t included in the original estimate. We don’t want to take advantage of your time. We will add additional funds to the existing milestone or include the budget into a new one. Everybody deserves to get paid for their hard & smart work. Expect changes and lots of them. All this is done because … see or mission.
During the development we’ll have some feedback. Sometimes it’s a lot easier for us to go and make the changes than explain them and ask them to make them.
Please, expect this and don’t let this hurt your ego. It doesn’t matter who made the fix, it’s important that the software is easy & intuitive for the user.
Please, comment your code, methods etc & follow the coding standard if you were asked to improve an existing project. Create small methods that do only one thing and only thing only.
Avoid code duplication.
The tasks are described in a document and can be accompanied by one or more videos.
If you’re not clear always refer back to the docs and videos.
We know roughly how much time & effort is going to take so if your bid is too high we won’t consider you. Be prepared to explain why you’re providing such estimate.
The tasks will be small, so they should be done within a few days or a week max.
If you can’t make the deadline we need to know ASAP so we can communicate that to the client and/or simplify the tasks. Waiting for the last minute to tell bad news is not a good idea.
Are you a professional?
Even the smallest task will reveal how you work and your approach.
We value people who ask questions and communicate often. People tend to assume things and if it’s not the right direction lots of time may get wasted.
It’s OK to provide feedback on the initial project specification and during development especially if you find a better way to implement something.
Keep in mind not all feedback will be accepted to be implemented for many reasons (clients haven’t requested it, it’s too early to implement it, there are more urgent tasks etc.) so keep giving your feedback
Can you work independently?
We like to work with people who can work independently. We discuss the goals and you figure the most appropriate solution based on the time and budget available at the moment.
This means that you don’t just implement the first thing that comes to mind but you plan to see what would happen 2-3 steps down the road.
Kaizen or continuous improvement
After each milestone and also when the project is done we’d like to know how and what we can improve for the next one so things are crystal clear and better organized.