Я дуже добре знаходжу масштаби бюрократії.
Крім цього, не ціла партія. У великих проектах є великі команди, тому що іншого способу немає, не тому, що це більш ефективно (на розробника). Ви оплачуєте вартість, як тільки додаєте другу людину до суміші з точки зору неефективності (тобто передачі знань та спілкування).
Найбільший проект, над яким я працював, мав 70 або більше розробників на 5 різних сайтах. Навіть одна зміна рядка займала щоденний мінімум, хоча це частково пояснювалося тим, що збірка зайняла 45+ хвилин через мережеве з'єднання від Цюріха до Лондона, а запуск програми зайняв ще 45 хвилин. Записки займали близько 5 хвилин на файл. Я не жартую. Лондонські розробники могли це зробити за частину часу.
У будь-якому випадку, що ви схильні знаходити, це те, що на великих проектах у вас буде маса членів команди, з якими ви не так багато взаємодієте. Це більше схоже на нещільно пов'язану колекцію міні-проектів. Одного разу я читав, що розробка Microsoft прагнула розбити проекти на команди 5-7 розробників, навіть для великих проектів, таких як Microsoft Office.
Частиною різниці є також різниця між малими та великими компаніями: більші компанії, як правило, мають більше процесу, більше правил, меншу гнучкість тощо. Але це аж ніяк не гарантується.
Хоча це може бути корисним і для кар’єрного розвитку. У невеликій компанії хтось повинен покинути або померти, перш ніж отримати акцію (або компанія повинна зростати таким чином, що команда розширюється, а ви рухаєтеся вгору), тоді як у більших відділах розробників ви можете переходити між командами тощо.
Крім того, іноді можна знайти справді розумних людей, до яких можна приєднатись і вчитися. У малих компаніях, які є настільки відокремленими та незалежними, може сприяти програмістам, які йдуть трохи «дивно», на зразок відлюдника.