Pros
You get to work with some great people. Some of the projects are fun, have a lot of visibility in the community, or are generally interesting. There’s an entire team of people who basically just solve problems related to deployments and other random problems created by the tech stack they’ve invested in. I don’t mean to discount the work of others, but they bailed me out many times and I am grateful I had the chance to work with them. The company is remote only and can provide good work-life balance. Overtime is generally frowned upon now. There’s a lot of talent lying just below the surface here. They may not have fancy titles, but you know there’s someone online at any given time who can help if you’re stuck.
Cons
No follow through. I was told for years how I was valuable and was doing great work, but no matter when you asked it was never the appropriate time to talk about compensation. Someone in leadership believes they pay competitively, but they do not. No room for advancement. There is no concept of junior/intermediate/senior in any of their roles. The company says it believes hard work should be rewarded, that’s how of my first supervisors got their jobs after all. I received 2 cost of living increases of less than 4% each over a roughly 4 year period while only hearing positive feedback from managers and colleagues. Estimates are to be adhered to as strictly as possible unless the client can be reasoned with. If they’re bad (and this happened multiple times), the company is committed to losing untold amounts of money while staff are yelled at by jackasses in every meeting. FWIW the policy tolerating this client behaviour is said to have been changed and I did not experience this myself (my teammates did). Even if you do an estimate, it will be reduced and/or re-estimated by someone else who thinks it will take less time. You are then held accountable for completing the work in an amount of time you don’t think is feasible. If you’re right, no one says anything until you start asking for better compensation. Financial updates and communication about company health is inconsistent at best. This had improved before I left, but trends take longer than a few weeks to identify.