| I have worked for digital agencies in three instances in my career. I think they are a nice easy way to get your foot in the door and learn how to be self-sufficient because you're required to. I have been exposed to different languages- JavaScript, PHP, Ruby, and C#. But I cannot recommend it for any software engineer that wants to improve their skills in the long run and head into more complex projects. Digital agencies feel nebulous to me. On the surface they make websites and apps, except that they don't really act like most software companies? Yet their revenue model mostly relies on clients paying them to build apps and websites... Simply put: Writing clean code and preventing technical debt doesn't create a lot of value in agencies- meeting the client's deadlines and getting things done the fastest way does. This is my anecdote but I myself spent about 5 years total working for agencies, and I've largely been repeating that first year. The end was almost indistinguishable from the beginning. Agencies require you to build particular kinds of websites- but nothing more. I have since worked for a smaller startup where I had more freedom to dictate how their SaaS product would be designed- but they were in an early stage, far from needing high scalability. I later moved on to do freelance work, getting a few clients here and there. Now I'm looking to settle into a company that lets me grow more as a developer, working with larger groups of people on larger products. I do not know how to prepare for interviews in typical software tech companies. It is all actually alien to me and didn't properly bridge the gap between agency work and going into scalable software. I'm interested to know if there are any guidelines that you recommend for doing that, because agency work is rife. Turnover rates are high in digital agencies, so I'm guessing so many people out there with agency experience like myself that also want to take on more substantial technical work. |