Pros
The people you work with are great. The location is great. The culture is fun and very casual. They use a lot of more modern technologies. You learn quite a lot if you're new to the tech industry. The work is very enjoyable. Your expectations are very manageable. Work hours are flexible. Able to work from home pretty much whenever you like
Cons
Other than your immediate coworkers, senior devs and directors, and low level management nobody cares about you. Pay is terrible for the area. Anyone in engineering could easily get a job anywhere else making substantially more. NO compensation increases, even to cover inflation. Barely any room to advance. Employee retention is terrible. I've seen so many really talented people put in their two weeks notice, and they just get a "well, see ya later!" from management. No effort to get them to stick around. No effort to quell the unease of employees who have any negative feelings about the company. Benefits. There are so many other options for tech employment in Ann Arbor, you don't need to settle for this place. The only reason you should look into working at Barracuda, if you're an engineer, is if you have 0 experience, and no qualifications. You can get your 2 years in and go anywhere else. Product management is bad. The products could be held together with the equivalent of bubble gum and masking tape, and they wouldn't want to put time into polishing it up. New features on new features on new features. What's broken stays broken. Why would we want to make anything better, when it's new features that drive sales. MAYBE because those new sales are going to figure out really fast that the products are busted, and the new shiny feature they put money down for doesn't work as well as they had hoped.