Оставляя в стороне отдельных программистов на секунду и сосредотачиваясь на «программировании» в целом (и, скажем, небольших компаниях и стартапах), это в основном так:
Во многих, если не в большинстве случаев, навыки программирования и техническое качество имеют мало общего с финансовым успехом проекта / продукта. Хорошая деловая хватка, маркетинг, удача и просто быть в нужной нише в нужное время - это чаще всего то, что приносит большой финансовый успех в программировании.
Я работал в компаниях, которые были очень успешными (хотя и в очень узкой маленькой нише), но качество программирования было, если использовать технический термин, святым беспорядком. Некоторые из них были грандиозными неудачами Джоэла Теста и в значительной степени шли вразрез со всеми мыслимыми лучшими практиками - но поскольку они находились в нужной нише в нужное время и сделали продукт, который достаточно хорошо соответствовал требованиям клиента, чтобы продавать и не получать судебные иски, они были довольно успешные маленькие магазины в то время. И основатели, которые их основали, ну, давайте просто скажем, что им «больше не нужно беспокоиться о деньгах», по крайней мере, не с точки зрения типичного источника заработной платы.
Итак, возвращаясь к отдельным программистам (например, Цукербергу, Пейджу и Брину) - вы видите, как разыгрывается одно и то же. Они не обязательно производили ТО, что было технически сложным или волшебным с точки зрения программирования, но они находились в нужном месте в нужное время и обладали необходимой деловой хваткой, чтобы превратить свои идеи в деньги. Подумайте о чем-то вроде Twitter: там действительно нет ничего такого, что ни один веб-разработчик не смог бы за выходные сделать в виде базового прототипа сайта (игнорируя масштабирование). Но не «великое техническое программирование» превратило его в победителя - это был маркетинг и последующая популярность.
Короче говоря, единственный реальный путь к финансовому успеху для программиста - это быть предпринимателем. Будучи корпоративной кодовой обезьяной, вы не разбогатеете, хотя, если у вас есть нужные навыки и / или вы подниметесь до уровня менеджмента, вы можете быть близки к тому, чтобы когда-нибудь получить доход, близкий к уровню выше среднего.