Pay and advancement: There are a lot of little cons depending on what you are looking for. First it's the salary. They will never pay you more than you're worth. Some of the people I work with are very good at what they do and they aren't getting what they are worth. Advancement is also very hard. You would have to be twice as competent than you would need to be moved up to the next rank, for example junior to regular. It seems that Ubisoft is capitalizing on their name on your resume, and they will use that to pay you less. Looking around I don't see anyone over 30. There are a lot of young ones, so what happened to all the veterans? They probably packed up and left after they realized the same old "carrot on a stick" story wasn't going to pan out. This company just isn't the best place to be at if you're looking to climb the corporate ladder. You would have to be good at politics and be friends with the ones making the decisions. Merit alone is not enough.
Ambient noise: Ubisoft loves open environments. If you're trying to program and you don't like noise, this isn't the place for you. You could put on some headphones and blast music to cover the chaotic noise and hear something more orderly, but is that really a solution?
Bureaucracy: Nearly every project we undertook went *way* over the deadline due to constant unnecessary communication between different departments. I've had projects I've worked very hard on then got canceled at the last minute because they took too long. The server and network security specialize in dragging out opening a simple firewall rule (which should have been there in the first place) into a 2 week long ordeal. Combine that with HR's reluctancy to promote and increase salary and they have a very good excuse as to why they will not give you a raise. They will tell you "well you haven't really done anything important here yet" You're doing the best you can, but others don't respond to your emails, or doing their job and you end taking more and more tasks to fill up your time and then you end up in a situation where you're constantly juggling complex tasks. If you're a programmer or you actually get some satisfaction out of getting things done, this is a recipe for unproductivity and/or frustration.
Pointless meetings: Every week we have at least 2 meetings in which topics are discussed which do not affect me or my work. They will fill your head with useless information that distracts you from your current work.
Lack of control: Combine the above negatives and realize that the company is too big to listen to one little ant complaining. Change will not come easily if at all. No one actually cares if you are happy and productive (a good thing if you don't care either). If you're like me and you want to grow and make a difference, this isn't a good, long term opportunity.