Pros
Happy hour every Friday, and lots of other parties. You don't really have to work if you knows "people" and able to BS in the meeting.
Cons
Business strategy - management seems don't know what to do other than kiss ass of their one big customer. Hard to imagine what will happen when that customer going away from them. Nobody partner with anybody forever, you know. Very strange way of management - most technical manager are the survivor of the old Cirrus Logic (which mostly are from Crystal Semiconductor), which might a good or okay engineer, but most of them don't make good manager. Not only that, manager usually in a different area of their direct report. ie. Analog background manager manages Digital engineers (also most managers have Analog background). So often your manager don't know what you are doing, and how well you are at it. Very hard to grow or get to do what you want to do. (This is in design, other area could be different, but I didn't hear good thing from other areas) Technical - for ASIC design, at least in the digital side - one word - sucks. If you coming with experience you will see their project looks like created by bunch of college kids on their school project. Very disorganize and outdated methodology. They always publicly mention about low-power design, no one in the company are good at low power design. Also they doing just some simple register controlled clock gating. This might be okay 10 years ago. Worst DFT implementation on the design have ever seen in my career. Lots of people on the project with very little to do. The people talked the most did very little or nothing but gets most of the credit. Another bad thing, the document you are using when you are design or verifying call the spec, there are almost none before I join and is poorly written and way too late in the process when there is one when they are doing it. Also, there is no architect there. Does this remind anyone the way of doing things in the 80s and 90s? Too much politics in the company. Some managers battle for more resources but don't execute. They are either incompetent for the task or it just a way of getting more "resources". All project are actually over staff. I think everybody knows that, but won't admit that, so that they can continue to say "we need to keep growing" and revenue can come in as long as that one "guy" still likes them and the amount of work still remain the same. People with skills mostly leave after 1 year or so. Some new graduates are leaving the company in around 3 years. People don't leave are either stuck there for too long and lost their competitiveness in the market and also those survivors who are in the inner circle. Frequent silent small layoff (1-few people) happened (every other week or a month). Management won't say anything when a person resign or layoff even when that person is in the same team (with the same manager). In my around a year "career" there I have at least see 20 people either re-sign or got layoff within a group of 100+ people. That's probably the reason they are keep hiring, since I don't see in anyway they need more people for the work. The company has very poor good talent retention rate, yet HR alway "force" people to write good review so that they can receive those "Best place to work" title. Come on, be real!!