With the evolution of internet almost everything is accessible from your computer wherever in the world. When however dealing with applications that are installed on a customer’s server this is often different, but even when the server is accessible integration work and tests needs to be done. Doing this type of work is a lot easier when you have direct communication with the customer, besides that a customer appreciates seeing someone working on it.
How much time you can expect to go on site depends on a couple of factors which I will discuss in this post. I will also reveal some of my opinions and experiences of going on site.
A first critical role is of course the type of job you have. Either you are a consultant or an in-house software engineer. As a consultant you will be working for many different customers, each only a short period. It is to be expected that as a consultant you have to meet the customer, negotiate and show the work you have been doing for him. A lot of this will happen at the customer’s location so spending a lot of time on site is just part of the job.
As an in-house software engineer however, it depends on what kind of software is being written and how the company is organized. If the software that you write is managed by the company yourself and hosted either locally or in the cloud then you only need access to those servers. If the software is however installed on the customer’s site then access to the customer’s site is required. Also the level of integration with other systems is important, if there is some special integration required then going on site is a necessity.
Most companies that create software that has this high level of integration with a customer’s infrastructure or other software is split up into a (product) department that is focused on creating the product with all the general components and a (project) department that does the customer modifications and integration. If you are part of the product team then there shouldn’t be any reason why you should go on site, this is of course not the case if you are part of the project team. The product team however should still be available for supporting the project team, but this can be done with other communication channels.
I prefer to spend as little time on site as possible for a couple of reasons:
- I am not a people person, and spending too much time with people tends to irritate and exhaust me.
- I like having a fixed location to work at, because I can organize everything just the way I want it to be.
- I don’t like spending too much time driving, as I consider this a loss of my time. I prefer being busy with something productive.
- I feel that working on a product is a bigger challenge than doing integration and minor changes for customer specific situations.
I am curious about your experience and opinion about this, so if you want feel free to leave a comment.