Порог входа и рабочая среда программистов всегда были темой, которую мы любим обсуждать. Недавно появились сообщения, что в США, где IT-технологии наиболее развиты, программистом может стать кто угодно. Даже если вы не окончили официальную программу по информатике; даже если вы никогда раньше не прикасались к компьютеру; даже если вы выбрали работу программиста только чтобы зарабатывать на жизнь и содержать семью, мир программистов приветствует вас. Поэтому мы невольно сравниваем рабочую среду зарубежных программистов, условия входа и другие условия, которые кажутся нам привлекательными, с условиями для программистов в Китае. Но по каким параметрам нам следует их сравнивать?

Один лист говорит об осени; многие IT-«эксперты» на самом деле всего лишь «кирпичные эксперты».

linghu9990 написал в блоге:Недавно я провёл собеседования с десятками кандидатов, подавших заявки на должности по разработке ядра. Все эти кандидаты пришли из очень известных крупных компаний в области чипов или встраиваемых операционных систем. Большинство из них утверждали, что имеют как минимум десять лет опыта в разработке ядра. Их резюме выглядели ослепительно, полны соответствующего проектного опыта, различных модных технических терминов, наград и так далее.

5403d4728945b

Но большинство из них не могли ответить на простой вопрос: когда вы вызываете стандартную функцию malloc, что происходит внутри ядра?

Не удивляйтесь. Когда кандидата попросили написать простой каркас LRU-кэша на основе хеш-функции glib, он сначала сказал, что никогда не использовал glib, что было ожидаемо. Я дал ему руководство по glib и подробно объяснил интерфейсы, но спустя более часа он написал лишь несколько строк ужасного кода.

Анализ причин:

Я считаю, что это явление вызвано не только их собственными причинами, но и компаниями, в которых они работают. Эти компании дают им большие объёмы стабильного кода, который годами не будет претерпевать серьёзных изменений. Технически сложные части полностью инкапсулированы в этом коде, поэтому они могут только следовать старым шаблонам и перестают внедрять инновации. Как только они выходят на рынок труда, эти так называемые «эксперты» не имеют никакой конкурентоспособности.Это дилемма программиста: мы зарабатываем на жизнь кодом, но крупные компании, которые нас поддерживают, медленно разрушают нашу способность зарабатывать на жизнь.

Как выйти из этой дилеммы:

Я думаю, что у событий всегда есть две стороны; одной рукой в ладоши не хлопнешь. Поэтому решения, естественно, направлены как на отдельных специалистов, так и на компании/работодателей.

Для отдельных специалистов:Во-первых, работайте над своими собственными проектами. Вам нужно постоянно «точить нож». Выбирайте какие-нибудь интересные вам задачи в свободное время и используйте своё время, чтобы преодолевать возникающие трудности. Так вы обязательно узнаете что-то новое. Если вы опубликуете свои проекты на GitHub, у вас может появиться шанс встретить человека, который поможет вытащить вас из текущей должности.

Кроме того, не оставайтесь в одной команде больше двух лет. Пробуйте ходить на собеседования каждые 18 месяцев. Вам не обязательно менять работу, но вы должны видеть, что нужно рынку и как вы можете адаптироваться к спросу.

Для команд/компаний:Оказывайте на сотрудников давление и бросайте им вызовы. Ротируйте должности, чтобы дать «экспертам» возможность расширить свои навыки. Запускайте новые проекты, чтобы предоставить поле битвы вашим воинам. Регулярно проводите «хакатоны». Это сформирует культуру реформ и инноваций.

В американском «мире программистов» нет порога; программистом может стать кто угодно.

Хотите стать программистом в США? Это может быть не так сложно, как вы думаете. Даже если у вас нет денег на обучение в полноценном университете по компьютерным наукам, есть другие пути. В последнее время в США становятся всё популярнее онлайн-школы программирования. Многие примеры из реальной жизни указывают светлый путь тем, кто стремится пойти по этому пути: будь вы бедным студентом в поисках работы или мужчиной средних лет в кризисе среднего возраста, желающим сменить профессию, мир программистов приветствует вас.

«Блиц»-курс программирования

Школа «Code Fellows» в Сиэтле очень уверена, что может помочь студентам найти работу. Она предлагает студентам шестинедельный «блиц»-курс программирования, который ведёт их от нулевой подготовки до базового начального уровня, беря за это $12,000, — и если они всё ещё не смогут найти работу, плату за обучение можно полностью вернуть.

5403d444eb2a4

За ростом числа подобных школ стоит растущее процветание американского интернет-рынка, которое привело к ситуации, когда программистов не хватает. Согласно прогнозным данным Министерства труда США, к 2020 году в США будет около одного миллиона вакантных должностей программистов. Более того, многие традиционные колледжи уделяют мало внимания компьютерным курсам, что делает этот разрыв всё больше.

Например, в этом году факультет компьютерных наук Вашингтонского университета принял только четверть полностью квалифицированных абитуриентов. Для тех студентов, которым не удалось попасть на программу по компьютерным наукам, к счастью, в мире программистов диплом — не единственный путь к работе.

Например, в Google, отраслевом эталоне, в некоторых командах 14% программистов не имеют соответствующего формального образования. Если посмотреть шире на всю страну, 67% программистских позиций приходится на не-IT-компании, а это значит, что помимо программирования нужны и другие обычные бизнес-навыки.

С этой точки зрения программирование — это на самом деле ремесло, такое же, как сварка или плотницкое дело. Это ремесло, которому любой может научиться за несколько недель или месяцев, чтобы приобрести базовые навыки. И как только эти начинающие новички в программировании сумеют получить свою первую работу с этими базовыми навыками, в дальнейшем на карьерном пути они получают равные возможности с программистами, которые пришли из формальных учебных заведений, — всё зависит только от их собственных способностей.

Возьмём Facebook в качестве примера. Первое, что делает каждый инженер при приёме в компанию, — это шестинедельное интенсивное обучение, и большинство курсов, естественно, связано с программированием. Компания установила этот стандартный процесс потому, что в большинстве колледжей и университетов факультеты информатики уделяют больше внимания теоретическому обучению, чем практическому программированию. Последнее фактически включает широкий спектр сложных знаний, таких как различные самые популярные языки программирования, управление проектами и совместная работа, а это значит, что квалифицированному программисту часто приходится одновременно иметь дело с десятками других программистов и миллионами работающих программ.

Программисты в конечном итоге могут быть заменены.

Степень по информатике помогает в теоретическом обучении и помогает ведущим инженерам продолжать оттачивать это искусство, но в эпоху, когда интернет настолько вездесущ, требовать от каждого программиста наличия степени по информатике равносильно требованию к каждому каменщику иметь степень по архитектуре.

5403d43610e45

Карсон, соучредитель «Treehouse», считает, что степень по информатике, полученная им более десяти лет назад, совершенно бесполезна. Интернет-технологии, меняющиеся головокружительными темпами, заставляют инженеров постоянно изучать новые модели и языки, что позволяет многим людям, сменившим профессию на полпути, иногда оказываться на одной стартовой линии, если только они готовы посвятить жизнь оттачиванию этого навыка.

«Почти всё, к чему мы можем прикоснуться сейчас, можно подключить к какому-нибудь программному обеспечению — это впервые в истории человечества», — сказал Карсон. Это как самое популярное выражение в Кремниевой долине: «В будущем будут только два типа людей: те, кто умеет программировать, и те, кто может лишь следовать машинным инструкциям».

Поскольку интернет-технологии неизбежно продолжат проникать во все аспекты человеческого общества, программистские должности, подобно другим видам разделения труда, которые были заменены ими, будут становиться всё более разнообразными.

Белый дом разрешает программистам носить рубашки на работу.

согласноThe Washington PostСогласно сообщениям, Белый дом создал U.S. Digital Service. Руководитель команды — не Обама, а Майки Дикерсон, бывший старший инженер Google, который в конце прошлого года приехал в Вашингтон из Кремниевой долины, чтобы починить обрушившийся Healthcare.gov.

5403d41ed3cf9

Неделю спустя официальный блог Белого дома опубликовал 5-минутное видео, документирующее день работы Майки Дикерсона в Белом доме. Членам команды Майки не нужно носить костюмы. Он считает, что ношение костюмов может заставлять некоторых программистов чувствовать себя некомфортно; в конце концов, работа программистов не сводится в основном к общению с посторонними. Они предпочитают повседневную одежду, которая позволяет им быстрее адаптироваться к окружающей рабочей обстановке и повышать эффективность работы, даже работая в Белом доме.

Заключительные мысли

Возможно, приведённые выше примеры — лишь единичные случаи, но нельзя отрицать, что по сравнению с отечественной индустрией программирования в Китае у иностранных программистов ниже порог входа, лучше условия работы и шире пространство для развития. Ранее американские СМИ даже шумели, что если между Китаем и США разразится война, департамент информационной безопасности США сможет мгновенно отбросить китайские сети в каменный век. Возможно, это несколько преувеличено, но не невозможно. По словам источников, знакомых с делом, после конфликта на военной подготовке в средней школе Хуанцан уезда Луншань события продолжили развиваться: сайт Народного правительства уезда Луншань был взломан, и хакер по имени «Сяолань» оставил на главной странице сообщение: «Неужели пропагандистский отдел вашего уезда смеет иметь хоть каплю совести?»

5403d98f5f3cc

Видно, что китайские правительственные сайты очень уязвимы, и число взломанных правительственных сайтов — не один и не два. Это уже не новость. Можно ли сделать вывод, что именно из-за недостаточного внимания внутри страны к компьютерным технологиям или из-за недостаточной открытости компьютерного образования такие инциденты происходят часто?

Честно говоря, любой, у кого есть хоть немного чувства, что «подъём и падение нации — ответственность каждого», надеялся бы на улучшение политики в сфере онлайн-образования и, по крайней мере, должен всячески ценить и поддерживать развитие отечественных операционных систем.