There is often a bit of uncertainty when it comes to hiring developers who do not physically sit on your company's premises. Unfortunately, a few of you have had bad experiences with traditional outsourcing, and wonder how Cefalo avoids the classic pitfalls using The Cefalo Model.
This article is for you. By reading this you will know what makes our method different from traditional outsourcing. We will take you through the entire start-up phase of a Cefalo collaboration, all the way until actual development work begins. Hopefully you will see that The Cefalo Model has a lot in common with recruiting your own employees, and provides you with a greater ownership of the project than many expect.
- First phase - from first contact to signed contract
- Second phase – recruitment and onboarding
- Third phase – ongoing operation
First phase – from first contact to signed contract
A collaboration always begins with a series of meetings, where we can get to know each other, identify needs, and find out if Cefalo can solve the challenges you are facing. This recipe is not written in stone, and can vary depending on the complexity and the size of both the project and your company.
Nevertheless, it is very likely that the process will look something like this:
Meeting 1: Get to know each other
The first meeting is usually quite informal, and involves getting to know each other and explore opportunities. We present The Cefalo Model, and you tell us about your own company and the challenges you face.
We often find that some are a little reluctant to ask the questions they are really wondering about. We encourage you to ask whatever questions you may have. It is important for us to be a transparent and customer-oriented company, and we are happy highlight both the advantages, disadvantages and pitfalls of external development.
After this first meeting, if you want to explore a collaboration more closely, we will set a new meeting in the near future – typically within one or two weeks.
Meeting 2: Specification of needs
In the second meeting, we go more in depth on what a collaboration will look like. Typically the framework for the project will be drawn up in this meeting:
- What time frame are we talking about?
- What kind of competence do you need?
- How many developers do you need?
- How do you envision the team composition?
- How will you and your team work together?
Based on this, we will find sample CVs from existing developers in Dhaka to match the type of expertise you want to have on your team.
However, these are rarely the actual people you will get on your team, since they are already permanent employees of other customers. As soon as the contract is signed, we begin an extensive recruitment process, to find developers who meet the criteria set in this meeting.
At this point in the process, we would also like you to talk to at least one or two of our existing clients. This way you will be able to hear their thoughts about working with Cefalo-developers, in order to find out if it could be a good solution for you as well.
Meeting 3: Signing contracts
In the contract meeting, we will review our specific proposal for an agreement – with time frames, prices and all the regular contract terms.
Once all relevant questions have been clarified and the contract has been signed, we can begin the recruitment process.
Second phase – recruitment and onboarding
All recruitment processes involve a certain degree of uncertainty, and you are probably well aware of the fear of paying dearly for something that does not meet your expectations.
At Cefalo, we give you our guarantee that we will provide you with developers who meet the competence profile we agreed on. We will simply not give up until you are satisfied. You should also know that we do not charge you for the recruitment phase; Billing starts when your developers start working.
This means we work for several months before we get paid. We think it's worth it.
First, it makes you feel confident that you are not committing to something you are not happy with. Secondly, we rarely experience that customers are dissatisfied. Meaning we really do not lose much by having such a guarantee. In fact, one of the most frequent feedbacks we get from customers is that if they had known just how well our developers work, they would never have hesitated in the first place.
So – how do we go about finding the best developers in Bangladesh?
The recruitment process
We find our developers through two channels: Online advertising via Bdjobs.com (Bangladesh's largest recruitment portal), and by using the network of our staff in Dhaka. Then we select the best through a comprehensive verification process:
- CV screening – We review all the applications we have received, and select the ones with the expertise you need, from the ten best universities in Bangladesh.
- Language check – We call all the relevant candidates, to make sure that their English is at a level where they can communicate well with Norwegian employers.
- Programming test – The candidates who pass the language check are invited to our offices in Dhaka to test their programming skills in practice.
- Senior Interview – Three of our seniors in Dhaka do in-depth interviews with the remaining candidates on problem solving and technology. Only those who get a vote from all three seniors go through to the next steps.
- Reference check – We contact the references of those who pass the senior interview.
- Management interview – Our COO in Dhaka discusses with the candidate whether there are any reasons not to hire him or her, or if there are other issues which can make the employment relationship short-lived. By taking this talk, we are able to avoid the high turnover often seen in our line of business.
- Optional customer meeting – If you want to assess the candidate yourself, you have the opportunity to do a video interview with the candidate before we hire him or her.
This process typically takes one or two months. In addition, you have to expect a one or two months notice period when we hire developers who have to terminate an existing employment relationship. Skilled developers are rarely unemployed – whether they work in Norway or Dhaka.
Meetings and team building between Dhaka and Norway
Our clients work closely with the developers in Dhaka. This is a cornerstone in The Cefalo Model: Our developers have to become as close to you as your own employees. This is really difficult to achieve if you have not met face to face. We recommend setting aside a week for meetings and team building when onboarding your new team, usually at your premises in Norway. During covid restrictions, we have had success using video meetings.
The purpose of this week is to eliminate the us vs. them mindset, and get both parties to think of the collaboration as a WE. In addition, this week is important for setting up specific frameworks for how you will work together in the future.
For this you should make presentations about your company and your business model, as well as one about Norway and Norwegian culture. Similarly, the developers will present Bangladesh. We will contribute with a briefing we call "Barriers & enablers", where we share tips and experiences on how to make external development work as well as possible. There will also be time allocated to start working on the project for the team.
In addition – when there is a physical meeting – we recommend that you do some purely recreational activities together. Good, old-fashioned team building works. This is for you and the developers to get to know each other on a more relaxed, personal level. Go out and have dinner, show them the fjord(s), or visit a cabin together – it's all up to you.
This builds a common corporate culture which will make the cultural differences less relevant.
Once your team´s daily operations are up and running, we recommend meeting physically at regular intervals (once or twice per year). For those who manage to get this done, we see that it has a great impact on the team spirit.
Third phase – ongoing operation
For the offshore collaboration to work, it is important that you have discussed what both parties expect from each other, set some fixed routines of daily meetings (on video), and that you use a flexible methodology such as Scrum to manage the project(s). You also need tools to facilitate video conferencing, chat and continuous deployment.
You probably already have these tools and routines in place, so there really isn´t a whole lot of changes from a “normal” working environment – other than the fact that your developers are sitting in Dhaka. It is nevertheless important to point out that formal communication, in terms of written specifications and frequent meetings, becomes even more important since informal communication is more difficult from abroad.
Organization and role distribution
There are many ways to divide the roles between your in-house team and the Cefalo developers, but this is a fairly common model:
- In-house: Product owner/project manager
- In-house or Cefalo: Architect, design
- Cefalo: Team lead, developers, QAs (preferably with your own developers)
Most of our clients have a close ownership to their own products/services, and are happy to provide the product owner themselves. The product owner maintains the backlog and keeps track of the product and progress.
Depending on the size of the project or product, you may also have the architectural role at home. The same goes for design: In most cases, our customers use their own designer, or a designer they know from previous work. That said, we also have designers available, if you wish.
Our team in Dhaka usually consists of a team lead (or Scrum master), X number of senior developers, X number of junior developers and X number of quality assurers (QAs). We recommend having one QA per 4-6 developers.
What does a two-week sprint with Cefalo look like
Most of our customers work in two-week sprints, and it looks something like this:
- Written specifications – This is the product owner's responsibility. Remember to describe the tasks with a sufficient level of detail, so that no misunderstandings arise. This typically takes ten percent of the total time allocated to the developers in the sprint.
- Scheduling meeting – A video conference at the start of each sprint, lasting between 30 minutes and two hours. Developers and project managers discuss the period's tasks, clarify questions, find out if the right time has been set aside, and so on.
- Daily video conference – We recommend having a 10-30 minute check-in every day. This is both to lower the threshold for surfacing issues that might not come up otherwise, and to keep frequent contact between the offices. Most clients do this Norwegian morning time, which corresponds to lunch time in Bangladesh.
- Sprint demo – The sprints often end with a sprint demo where the team demonstrates what has been achieved during the sprint.
- Sprint evaluation – At the end of each sprint you should also host a video conference where the developers can discuss what has worked and not, so that you – as a team – can continue to improve your work processes.
All other communication usually goes through e-mail, Slack and video meetings. Dialogue about product specification often takes place in tools such as Jira, and code is most often stored in Git.
This is what it looks like for the developers in Dhaka
Cefalo's offices in Dhaka are quite similar to an open office landscape in Norway, and consist of a number of teams working for our various clients. As we have a broad client portfolio, it also means that your new developers have access to a lot of varied knowledge and expertise where they do their everyday work. If they have a question about how something can be solved, the answer is often a couple of office desks away.
We also encourage active knowledge sharing via short lectures, and through what we call The Cefalo School. Here, developers with special skills hold courses in the evening, which usually extend over several months, with an exam at the end. This means that our developers always develop professionally, and we believe this is one of the reasons why Cefalo has become such an attractive place to work.
What if you are discontent?
Cefalo is known for having skilled developers who work well with Norwegian customers. Still – recruiting is not an exact science, and misappointments can occur. If you are discontent with the way things work, make sure to raise it directly with the Norwegian management. We will handle it for you.
To make sure we are always on top of things, we have quarterly status check-ins with clients in Norway to go over the relationship and the work being done. This is a great opportunity to air your thoughts and give feedback.
One of the benefits of using an agency like Cefalo to hire developers, is that we take care of HR and recruitment, at no extra cost to you. If you want to scale your team up or down, we will solve it for you. It's not uncommon for customers who start with a few developers, to go on and expand their team once they see how well it works.
A collaboration with Cefalo is intended to last over a longer period of time. Our goal is for you to think of your Cefalo developers as you would your permanent employees. The more you put into making things work, the more you will achieve.
Do you have questions that were not answered in this article? Curious about whether your project is suitable for external development? Feel free to contact us and we will do our best to provide you with answers.
Are you curious about external development? We are happy to have a pleasant chat with you by phone, meeting or video.
Post written by Per Einar Myklebust
CEO & Founding Partner