I would like to note some moments from the perspective of a person who has been working in outsourcing for almost 5 years. Before outsourcing I was working as 1st line support specialist, later moved on another position - ERP consultant / programmer, than moved again to another company and new position - Information Security Specialist / Analyst (SIEM, SOX audit etc).
After 8 months in infosec as analyst and SIEM engineer I have decided to change something again because such kind of work is routine and boring for me, so I changed company again and took position of Linux system administrator on commercial project, was like 2nd line support (remote).
Before I came to my current company, I changed 2 other companies and 3 positions, mainly companies were in the "product" model - retail, telecommunications when I always worked on one project, actually nothing major changed for me.
The advantages of this approach are that you concentrate on one thing, your specialization becomes narrower, but at the same time the knowledge is deeper and you understand more different aspects of the same product, you understand it better and you naturally see the results of your work. Although the development takes place exclusively within the framework of a single product or project, but the knowledge at the end is more in-depth and, if I may say so, high-quality, than you go everywhere a little bit and with a certain periodicity.
Already in outsourcing, I was able to try myself as a Linux system administrator and later at the beginning be a specialist, and later a team leader and project manager for penetration testing projects.
The positive side of outsourcing would be to highlight such things as the ability to quickly switch between projects, working not with just one project, for example, but projects are constantly changing - somewhere easier, somewhere more difficult and in general it gives new experience, new knowledge. If in the process of working on a project something is especially interesting, there is always the opportunity to study it in depth.
For me personally, it would probably be extremely boring to work for a long time only on one kind of project (4-5-6 years) and apparently in this regard, for myself, I chose the direction of outsourcing. Although I do not see the results of my work in the literal sense of the word - for example, on the development of some of my application or product on an ongoing basis, but at the same time I see these results a little differently - the direction is popularized, the team is expanding, we opens new competencies and we grow.
Of course, if we talk about startups, then working with the product in this case gives the feeling of opening something new, a little different sensations and perception of everyday life, rather than when you go on schedule, finish someone's shoals, you understand that it can last forever and the picture as a whole will not change with the same product, the sensation of the Groundhog Day is taking shape.
- Changing projects
- Working with wide varity of technologies
- Meet more new interesting people
- More responsibility
- As for self-organization - may not be always applicable because you not always have possibility to offer something or give advice to customer, but customer says what to do and how to do (slavery? :))
- You may not see progress (if speak about final result in development, testing etc
- This results are not yours :)
- More of daily routine...
- You need to meet not only your company requirements, but also customer's
- Additional interviews with customers?
- In case if you have no project within your main skills, you can be assigned for another project/division you possibly not interested in