Great colleagues and mentorship initiatives. Always on-hand to help you with problems. A very relaxed environment and an opportunity to work from home remotely occasionally. Overall, an excellent place to learn and develop as a software engineer.
Cons
No specific allocation of tasks, a pick-your-own from the board basis.