Ошибочно считается, что программист должен писать код и, собственно, все. Эта профессия привлекает многих из-за отдаленности от заказчика, если это не фриланс, конечно, и возможностью заниматься любимым делом получать зарплату. Не всегда заранее понятно, с чем программисту придется иметь дело при устройстве в стартап, средней величины компанию и в крупную корпорацию, здесь очень много ньюансов. Подразумевается, что все эти компании имеют основное направление - разработка программного обеспечения. Вот сравнение.
Стартап - небольшое предприятие, которое может иметь спонсора или существовать на деньги основателя. Стартап обычно ищет нишу, в которую может приткнуться, поэтому может поменятся все, в том числе ваш любимый язык программирования на то-то модное. Легаси очень быстро попадает в продакшен, где его тестируют пользователи.
Минусы стартапа в большой нестабильности предприятия, работники часто занимаются делами вне сферы своей деятельности, здесь более распространены авралы, переработки.
Плюсы заключаются в возможности попробовать новые технологии, быть на виду, так как работников мало, и, в случае, если стартап "выстрелит", рассчитывать на быстрый карьерный рост в дальнейшем. Но, по статистике, 75% стартапов вскоре закрываются по разным причинам. Обычно рабочие процессы здесь непредсказуемые, всё держиться на определенных людях, которые считаются "незаменимыми".
Обстановка обычно неформальная, без жесткой иерархии управления, многие из-за этого идут в стартап. Действительно, если количество персонала небольшое, то и настройка и следование процессам - лишний, усложняющий фактор. Можно понять руководителя стартапа, который боится поставить план работникам, так как может уйти один из ключевых работников, а это может даже привести к закрытию проекта.
Компания среднего размера - здесь уже интереснее, так как это может быть "выстреливший" стартап, проект более крупной компании или её филиал. При этом, самый худший вариант для отдела разработки - если процессы остались от стартапа, а по размерам это уже полноценная компания. Лучше, если внутренние процессы подчиняются регламентам, документации, обязанности распределены так, что люди перестают быть незаменимыми. В этом случае вам не придется заменять бухгалтера, когда она в отпуске. Компания может годами менять процессы, при этом пытаясь найти такие, которые вернут к продуктивности стартапа.
Минусы в меньшей возможности карьерного роста, постоянная гонка за конкурентами, часто большой технический долг и кодовая база, технологии уже не такие модные.
Плюсы в существовании системы управления, веры в светлое будущее, надежды на стабильность. С технической точки зрения - уже есть тестеры, девопсы, сисадмины, СI/CD, линтеры etc.
Корпорация - большая компания, конкурентов которой почти не осталось.
Минусы: работники в ней - малозаметные шпунтики и винтики, карьерного роста можно ждать десятилетиями (когда занимающий место уйдет на пенсию), часто деградация технических навыков, так как большую часть времени занимает бюрократия и рутина. Подходит не каждому. Вдобавок необъятная одним умом кодовая база.
Из плюсов то, что много всяких дополнительных штук типа ДМС после испытательного срока, бесплатный фитнес, действительно отправляют, а не обещают, на конференции. Зарплата выше обычного. Высокая стабильность.
Какой вывод можно сделать из этого? При выборе компании обращайте внимание на размер и какие процессы в ней настроены. Можете спросить на собеседовании - как настроено управление персоналом. Если косвенно, то можно поинтересоваться планом введения нового сотрудника в должность, если такой есть. Если его нет, то скорее всего царит бардак, если он на пять страниц - бюрократия.