Pros
- Great benefits - Opportunities to learn new technical skills - Impressive architecture and developer tools - Looks great on a résumé
Cons
- Performance evaluations (PSCs): We talked about PSCs year-round, and it felt like every little thing I did (positive or negative) would show up on a PSC. Employees are technically assessed on many aspects of performance, but the only one my manager focused on was lines of code. - Competitive culture: Constantly talking about PSCs meant everyone on the team was afraid of any appearance that they did something wrong, which created a culture of blaming others and never admitting mistakes. Managers either stayed out of it or made it worse. - Workload: My tech lead set deadlines that were too aggressive and didn’t listen when my teammates and I pushed back, so we were constantly behind schedule. Working late at night and on the weekends consistently was required just to remain a few months behind schedule. - Asking for Help: Several members of my team had to ask for help writing code many times per day. Most of their questions could be quickly solved by typing a few words into a search bar and looking at the first result, but they still asked another engineer any time they encountered something they didn’t already know how to do. They would intentionally not ask managers and avoid asking for help while managers were within earshot.