Pros
- Culture and work/life balance are fantastic - hiring in with a class of peers made this a fun place to be socially.
- High performers are given a fair amount of autonomy quickly.
- Year over year raises are a generous percentage.
- You can get paid overtime (if your project has budget for it).
Cons
- Compensation is below market rate for quality engineers.
- Time with the company is weighted far more than performance.
- Codebase is low quality, you will spend more time navigating enormous amounts of technical debt than you will writing code, which will hurt your ability to learn solid engineering principles.
- Outdated tech stack - none of the three major front-end frameworks are used, nor is the most popular VCS. This will affect your ability to market yourself in the industry.
- Zero emphasis on CI/CD, you will do code deployments manually, a tedious and error prone process which takes time away from writing (and learning how to write) higher quality code.
- Unit tests are so tightly coupled to implementation that they are not useful.
- You will not be rewarded for taking initiative to refactor or improve the stack. The emphasis is on implementing only the absolute minimum needed for enhancements.
In summary, the technical environment here is brittle and promotes development patterns that are not industry standard. You can learn more, use better tech, and get paid more elsewhere.