Pros
- there is room to grow, my team lead gives me opportunities to expand my skills and experience, and there is the chance to move to other teams and roles - you are given a high degree of freedom on projects and in general, as long as you can justify and explain your choices - as the company is still young and growing, there is plenty of new and interesting projects to work on - the company has strong, decent values which are actually felt as a big part of the company, and don't just revolve around making money for the company - company events, summer days in particular, are fantastic
Cons
- it is a very fast paced environment which can be stressful at times - having highly autonomous teams can make large distributed projects more difficult and make it harder to focus teams on particular things - with the very large and quick growth there are sometimes growing pains that go with it