If you want to learn on-the-job, an agency is a perfect choice
1. Larger agencies work for larger organisations and undertake large, challenging projects
For example, I worked on the corporate website of an international company. This is an assignment that I could never have done directly for this end client, because they do not hire individuals for such an assignment and I do not have any contacts there either. I would not have been able to complete the project individually either, because then I would not have been ready after 10 years. At this agency, we worked with 20 people for six months and then you get something done.
2. Agencies are often a hub of technical talent, so it is very easy to make new contacts and exchange knowledge
This is also greatly encouraged and this is not always the case when working for an end client. At an end customer, the development department is often a separate department with people who have been working there for a long time. At an agency, it is easier to quickly connect and feel at home.
Recently, for example, I got stuck on a technical problem related to the deployment of a release. We could not solve this in the team, but a colleague in the agency had the knowledge. He helped us the same day with very specific technical tips and advice, and then the problem was solved and we could continue.
Variety, flexibility and the ability to adapt quickly should suit you
3. Varied projects instead of one continuous long term project
Agencies work for several clients at the same time. Many projects have a clearly defined end. And this means that, as a specialist, you are often assigned to several clients in a short period of time (say, a month). Projects can be long-term, sometimes even multi-year, but even then you often work for several clients in parallel.
I myself am someone who likes to meet new people regularly and switch technical contexts. By working for agencies, I have worked on dozens of interesting projects in recent years and this has given my knowledge development an enormous boost. And I have never been bored.
4. Agencies are hired to realise innovative things. So you are constantly busy with the latest developments in Drupal and other techniques
End customers often do not have the conditions to build up specialist knowledge, because you are specifically trained by doing several similar projects. And even if they do have a specialist in house, this person is often deployed on management tasks. That is why end-customers outsource projects requiring specialist knowledge to agencies.
5. Knowledge development of personnel is a distinguishing factor for agencies
Therefore, a lot of attention is paid to this aspect. A good agency distinguishes itself from competitors by having the right knowledge and training possibilities.
Many agencies have internal groups of colleagues who regularly discuss and share the same specialism. This can be a Slack-channel, but also a periodic training-day or even visiting conferences.
When you work for an agency you will be challenged. It is also expected of you that your technical knowledge is up to standard and that you are constantly improving your skills.
Drupal is a specialism to the core. How do you set up a new project according to industry practices? What open source modules should you use and what functionality should you build as a custom solution? For which activities can you assign a junior or intermediate developer? And which activities require seniors or experts?
All reasons why we work with agencies.