Pros
- Challenging opportunities to work on large-scale software development - Good place to learn from and work with smart people (at least in IT) - Company makes an effort to listen to employees and improve work environment - Talented people with a positive attitude can move up the ranks - Overall compensation is good - Reasonable work/life balance. Not a sweat shop. For me the positives outweigh the negatives. Overstock is good place to work and probably one of the best employers in the area for software developers. I've known a number of developers that have left Overstock but did not find greener pastures.
Cons
IT lacks empowerment. For a company who views themselves as a tech company, there is a surprising lack of tech-savvy people at the top of the company. IT tends to be told what to do and doesn't have much input into strategic decisions and steering projects. When IT gives feedback that the executives don't like, the executives tend to view IT with skepticism and distrust. It can be a struggle to maintain a positive attitude. Developers often feel pressured to do things quick and dirty. Projects can be frustrating due to arbitrary deadlines and constant changes in direction. There are some applications that have been around a long time and are a beast to work on. Most of the executives don't quite seem to get software development. They fall into common pitfalls like thinking projects can be done twice as fast just by adding a bunch of newly hired developers. The year-end bonus is kind of a joke. The last few years it's been in the 1-3% range (for software devs). It's better than nothing but it's always less than people expect due to management telling employees throughout the year how good the bonus pool is looking, only to have it rapidly shrink at the end.