The flipside of the flat structure - internal organization can be a little chaotic. People's technical skills are frequently better than their communication skills, which can be frustrating. The system is relatively well-developed, so don't expect to be working on greenfield projects all the time. Much of the codebase is sparsely commented, with little standardisation of code style.