The biggest downside to working at Guidewire is the domain: insurance software. It's not exactly 3-D graphics or the hottest Silicon Valley technology du jour. Still, from a software engineering perspective, there are definitely some interesting technical problems to solve.
I found life within product development to be a bit cliquish. The same small groups seem to break off for lunch every day, and there's little interaction between cross-functional groups.
There's not a lot of opportunity for traditional career advancement at Guidewire. At least within product development, the structure is flat and titles aren't all that important. Everyone gets an annual review and salary increase (when merited), but announcements of title promotions are rare. I preferred this approach, but if you care about your title, it may not be the place for you.
Developing enterprise software is just plain *hard*. The customers are using such antiquated technology that often they can't articulate what they want. So product managers have the near-impossible job of trying to synthesize many disparate requirements into a single product, and not surprisingly, the first attempt is not always what the customers exactly need. This leads to a non-trivial amount of re-work, which can be frustrating. That said, part of the problem when I was there was that the product requirements identified by product management were often vague, which led to engineers building the wrong thing. (In fairness, this was identified as a problem and steps were being taken to correct it when I left.) Another challenge is integrating the product with each customer's legacy systems, since they typically have many such systems and can't retire them all at once. Integration is a big challenge for product development, but especially for the professional services group. Those folks do an *incredible* job deploying the product under very challenging conditions, all while keeping the customers engaged and happy.