Vantaggi
Flexible hours, reasonable opportunity for expanding your knowledge, always something to do with coworkers, it really is like working with your friends since there are always people that share common interests do stuff together outside of work.
Svantaggi
flexible hours mean you work more from home in the middle of the night, management indecision causes schedule nightmares, the company is trying to do way too much with way to few people, every project is understaffed by 2x, over committed on features by 3x, and scheduled to be finished 6 months ahead of reality. No reverse feedback from employees to management so they are allowed to run open loop, as long as they look good to their superiors, then they get praise and promotions. Really, the way to get promoted is to screw something up so badly that there should be no choice but to fire you. But if you've kissed the right asses, you get promoted instead. There are also now as many VP's and PM's as there are engineers, no wonder we can't get anything done.