Pros
- Great pay bump; - Friendly coworkers; - Fun product; - Work-life balance; Working on UIs that hundreds of thousands of normal people use everyday is a very fun problem to tackle, especially when hardware (TVs) are involved. I interviewed for a standard Software Engineer position but was given the Senior title with a pretty nice pay bump. My coworkers were fun to talk to and work with, so no issues there. The work-life balance was decent - no unlimited PTO, but my immediate manager was very understanding if you needed to run errands, schedule doctor appointments, or just take days off.
Cons
- Team silos; - Money-focused leaders; - Lack of quality; The BE, FE, and quality teams were separate, which really created a "throw over the wall" mentality. The quality of the code was horrendous when I started, but I helped rework some of our code, adding a ton of unit tests and establishing best practice patterns before leaving. There were still some major technical issues with the general architecture of the code by the time I left, which I consistently tried to get prioritized to be fixed, but I kept on being put on "interaction tracking" work, which was not fun nor fulfilling. The biggest reason why I left the company is because management consistently was changing priorities, causing the code quality and user experience to suffer. And even though they were aware of this, they decided to release subpar features just to bring in revenue. I understand that bringing in a consistent cash flow is important, but if the quality of the product starts to suffer, in the end the company will lose users and thus money.