Pros
The software and production teams at Sphero are incredibly talented and creative, but also supportive. There's a culture of mentorship and learning among the software engineers. The team members are good at providing feedback and having candid conversations about what it takes to make something special. It's not only common for junior engineers to ask for help, but also senior engineers feel comfortable asking junior engineers for a hand too. It all seems like just what it takes to create awesome things. Everyone takes a genuine interest in the development and they work together to solve the challenges. The collaboration between engineers and artists is close. Engineers and artists and designers are in a constant back-and-forth that gives the team members a real impact on the direction of the product. For example, I've seen a new junior engineer have an idea that changed the entire direction of a product that was used by millions of people, and his name is on the patent now. People there are generous with their feedback, generous with their ideas, and there's a shared sense of accomplishment. There's time to create your own hacks and try out your own product ideas. There's opportunities to help at fun events all around the country. In addition to being a software engineer, I also got to publicly speak about our technologies at events, help children in classrooms all over the country learn to program, organize hackathons, and even visit the White House. The work is meaningful, fun, and full of surprises.
Cons
Many Sphero products are entertainment products, and while they're incredibly fun to make and to play, the production of entertainment products has special demands. The development is very iterative, because fun has to be *found*, not dictated. This means that hard work will end up being cut from the final product, and features will change. You can't be too married to any idea, technology, or solution. Sphero's product releases and announcements are very focused on strategic events, such as Christmas, Toy Fair, CES, and Comic Con. While there's a lot of opportunity to nerd out at some awesome conferences, it can get intense leading up to these dates. It's exciting, but also demanding. Sphero wants to make completely new things, so *what* they make, and by extension, *how* it's made, changes by every year. It's possible to be hired as an expert at one platform, and be doing full-time work in a completely new environment the next year. Developers have to be flexible enough to embrace completely unheard-of challenges where there are no best practices.