How does the process start?
In many ways, starting to work as a consult inside the customer’s team is a lot like starting to work for a new employer. The process usually starts by you receiving an email with an invitation to meet the customer, who are looking for a developer for their app. The following week, you have a hiring interview with the customer where you will talk about your resume, what they are looking for, the project they are planning and so on. The interview includes a few technical questions as well.
The interview, as well as the first weeks at the customer might be stressful: you are representing your company and you want to make the best impression. If you are selected, you might have to drop quite suddenly whatever you were working on before. You have to get to know your customer, your new workmates and your new project while being effective as quickly as possible because you need to be a seasoned professional. This can even be a bit harder if you are replacing someone in the team, as you will have to learn their ways and the frameworks they used.
Sometimes, working in the customer’s team can be very welcome too. If you are getting tired of working always on the same projects, if it is getting boring to do the same every day and you miss a challenge, then you can get a gush of fresh air without having to change your job.
After a few weeks, you finally get to enjoy the wonderful learning experience this change has brought to you. You might find out about useful tools or practices you didn’t know so far. You can then try to import them to your home company and it is a very nice feeling when that works out. You may get to know another part of the city, its shops and restaurants. And of course, reading existing code from another developer and working with new people will help you to improve your own skills.
Keeping in touch with your home company
The relationship with your home company becomes a bit more distant for a while. You might not always know what is happening there and it is not as straightforward to get help from your colleagues when needed. That is why it is important to have regular events in the home company to be able to stay in touch with everyone. On the other hand, it is much easier to get feedback from your customer and small adjustments are done more effectively.
Although it is important for me to be regularly in my home company, for all these reasons, I like working at the customer from time to time. I think it is especially a good idea to spend a few weeks with your client at the beginning of a project to get to know the people involved, and at the end to fine tune your app.