Pros
* Very technologically advanced products, interacting with similarly advanced tech by world's leading network hardware providers. * Fair pay for (very) hard work, including a stock-sharing plan (with reasonable maturity: over 4 years, maturing in quarters every full year of employment). * Most peers are great folks AND really techie. * Fun company trips and get-togethers. * Fridges packed with everything from fresh vegetables and bread to non-dairy milk and three different types of spreads (and 4 different types of cereals).
Cons
* Long hours are the norm with overtime almost a certainty (goes with being a global company, dealing with people from all corners of the world). * Very hierarchical, almost the exact opposite of "flat company structure" (with several mid-level managers, maybe still with the company, fully taking advantage of. "Cause I said it has to be done!" their ultimate reasoning in ending discussions, and of course, the "grunts" don't need to know why things are the way they are, only that, "I said so"). * Cross-departmental rivalry: countless times department A's feature is failing cause department B "forgot" to notify them of some change. Other times, department's B critical project is delayed, with them taking the heat of course, because department's A manager allocates his resource to anything but the feature-fix desperately needed by department B. * Upper management will ALWAYS have the mid management's back, only making a show of hearing the "grunt"'s arguments. If a "grunt" and a manager clash, even if the "grunt" has a valid point, it's only a matter of time before they are shown the door (their input, valid or not, discarded). * Advanced tech solution using aging tech stack: Java, Python, Angular. Any attempt to modernize even the tiniest of projects is squashed, hard. CTO's married to the techs he has been using all of his career and is sure there are none better.