I spent my first few years of as a developer working for agencies, but recently moved to an in-house company.
Since each project usually has a short deadline, agencies give you the option of changing up the tech stack, which is great for learning. The main differences I've noticed so far...
Testing is a larger concern for in-house. Outside of VC pressure, there's not as tight of deadlines in-house compared to agency projects. However, because we're not handing-off the project(s) to clients, maintenance is also a larger responsibility.
More discussions happen before a solution is decided on when working in-house.
Implementing hot-fixes and coming back to them later is possible in-house. This option isn't really there when you're going to be handing your code off for someone else to maintain.
Which do you prefer? What are some differences you've noticed between the two?