«Программист с дипломом не более трушный, чем самоучка». Как беларус работает в английском Microsoft
11 октября 2024 в 1728642000
devby.io
Федор Сазанавец - программист-самоучка, у него нет диплома по Computer Science. И тем не менее он работает в Microsoft, живет в Великобритании, пишет книги и курсы по программированию, а еще курирует обучение в буткэмпах в США. Он считает, что разработчику не нужен диплом о высшем образовании, - чем вызывает на себя гнев дипломированных программистов. Издание devby.io поговорило с Федором о том, как он строил карьеру в IT.
«Мне казалось, когда они закончат учиться, на рынке программистов будет больше, чем вакансий»
- Компьютеры мне нравились с детства - в основном из-за игр. У меня был клон Sinclair Zx Spectrum - с клавиатурой, которая подключалась к телевизору и к «кассетнику».
В компьютере был встроенный язык Basic, и я писал на нем простенькие игрушки: памяти было около 47 кБт, если я правильно помню, - ничего особенного не напрограммируешь. И даже небольшая программка загружалась с кассетного магнитофона на компьютере минут пять.
…В 2001 году мы с родителями переехали в Великобританию - мне тогда было 15 лет. Я закончил один класс школы и два класса колледжа. Потом поступил в университет - в качестве специализации выбрал Environmental Biology, а затем закончил еще и магистратуру по Environmental informatics.
Хотя в названии курса есть слово «информатика», но мое обучение с этим связано было косвенно. Нас учили использовать разные компьютерные системы для физической географии и экологии - а не писать код.
Вы спросите, почему я выбрал биологию, а не программирование. В моем окружении почти все выбрали Computer Science и что-то подобное, и мне почему-то казалось, что, когда они закончат учиться, на рынке будет очень много программистов - гораздо больше, чем вакансий. Вот таким я был наивным!
«Складские рабочие в ночную смену зарабатывали больше»
Работу по специальности по окончании университета я нашел в течение полугода. Она была связана с использованием геоинформационных систем для моделирования риска наводнений. В Великобритании это больная тема - особенно в 2012 году, когда я только начал работать: в тот год в результате наводнений в разных регионах страны были затоплены сотни улиц и домов.
Работа мне нравилась. Но очень не нравилась зарплата - в то время средняя британская зарплата составляла порядка 25 тысяч фунтов (32,6 тысячи долларов) в год, у меня же было - 18,5 тысячи фунтов (24,1 тысячи). Как-то я узнал, что складские рабочие в ночную смену зарабатывают больше, чем я, - а ведь им не потребовалось оканчивать магистратуру.
…Как я начал программировать - расскажу: моя компания была немного связана с технологиями, и у нас была команда разработчиков. Так получилось, что я с ними подружился - и начал понемногу помогать. В процессе учился. Один из коллег стал моим ментором - он подсказывал мне, что надо изучить, освоить.
Сначала я делал простые вещи - баги фиксил, потом более сложные штуки стал писать. А позже меня перевели в другой офис, где разработчиков не было. И я все больше и больше занимался именно программированием, писал на языке Visual Basic .NET.
Но зарплату мне никто не повышал - хотя я и разговаривал с начальством на эту тему (после оплаты аренды и коммуналки у меня оставалось на жизнь 170 фунтов (222 доллара) до конца месяца - что вообще ни о чем). Поэтому однажды я просто написал в резюме, что умею кодить, - и отправил его в «свободное плавание». Мне начали звонить работодатели - и я ушел. Зарплату сразу же получил в два раза выше.
«Я очень быстро выучил C#, SQL»
Хоть моя новая компания была и небольшой, она не только производила свой софт и продавала его, но также предоставляла услуги по его модификации под конкретные задачи других предприятий - в основном трейдинговых и хедж-фондов.
В то время удаленка не была еще повсеместно принята. И получилось так: когда я ехал на собеседование из Рединга в Гилфорд, путь в офис занял у меня 30 минут. А потом дорога туда и обратно по «пробкам» в час пик занимала до трех часов. Меня это не устраивало - столько времени впустую. Из-за этого я и ушел.
Я очень быстро выучил C#, SQL. Уходил я уже в CGI, которая входит в десятку самых больших консалтинговых компаний.
…Тут вышла интересная история: я подался в новую компанию, потому что их офис находился недалеко от моего дома. На интервью честно признался, почему ушел из предыдущей компании: «ездить далеко - три часа в обе стороны». Но на второй день работы мне сказали: «У нас нет проектов в этом офисе - мы отправим тебя в другой…» И вот если раньше я ездил в Гилфорд, то сейчас мне нужно было ездить через Гилфорд - еще дальше… (смеется).
И тем не менее я проработал там 1,5 года, потому что в этой компании было заведено так: если ты не работаешь в офисе, куда оформлен по контракту, - тебе оплачивают расходы на дорогу и плюс платят за время, проведенное в дороге. И два часа туда и два часа обратно уже не казались мне потраченными впустую - ведь мне за них платили.
«Сошлись 2 фактора: что я довольно известен был в .NET-среде и в Microsoft видели мои книги»
В Microsoft сами предложили мне работу.
А история такая: мне было мало работать программистом - где-то с 2018 года я начал производить контент: вел блог, опубликовал курсы - сначала на Udemy, а потом и на других площадках.
Известное среди программистов издательство Packt увидело мои курсы на Udemy и предложило «халтурку» - я записывал для них обучающие видео. А потом они предложили сделать книгу.
И я написал книгу. А пока ждал, пока ее опубликуют, подумал, а не написать ли мне еще одну - самостоятельно, без посредников. И сделал.
Я постил свои фото с книгой в LinkedIn - и один из самых быстрорастущих стартапов Калифорнии Empower - предложил мне работать на них удаленно. Просто потому что кто-то у них увидел мой пост с книгой - «а нам такие нужны».
Мне нравилось работать там: стартап позволял сотрудникам трудиться откуда угодно - я два месяца провел на Бали. Но удручало, что некоторые встречи были совершенно неудобны для меня по времени - потому что у меня заканчивался рабочий день, когда у них только начинался. Чаще всего эти встречи проходили в полночь по британскому времени.
…Из-за этого я начал задумываться об уходе. Тут-то мне и позвонил рекрутер:
«В Microsoft на проекте как раз рядом с тобой требуются люди. Мы видели, что ты Microsoft MVP (это награда, которую дают людям, которые вносят существенный вклад в продвижение технологии Microsoft) и ты работаешь на Empower», - то есть сошлись два фактора: что я довольно известен в .NET-среде и что эти люди видели мои книги.
Так я и оказался в Microsoft.
«По описанию в Amazon - ад, а не собеседование»
Мне сказали, что собеседование со мной было упрощенным - всего в два этапа.
Впрочем, я и сам это знаю: за три года до этого мне предлагали работу в Microsoft в Дублине - и я проходил собеседование, «как для всех», но… не прошел!
Во второй раз у меня было довольно простое техническое интервью и просто разговор - как behavior-интервью.
Стандартный же процесс в Microsoft - это когда тебе сначала дают тестовое задание на платформе Codility (это что-то вроде LeetCode), а далее до пандемии человека приглашали в офис Microsoft, и там он проходил четыре этапа - один за одним - в течение дня, на каждый этап по 45−50 минут плюс небольшой перерыв между этапами.
Свой цикл собеседований в Microsoft я проходил в пандемию - поэтому он был онлайн. И там, насколько я помню, было три разных технических интервью - довольно сложных… Но не таких сложных, как в Amazon.
Дело в том, что меня приглашали в Amazon и расписали заранее, из чего будет состоять собеседование. А дальше я поговорил со знакомыми, которые там работали, и они рассказали, как там. По описанию - ад, а не собеседование.
В Microsoft тебе просто дают технические задачи довольно адекватные. Человек, который практикует LeetCode постоянно на уровне medium, справится с их решением.
В Amazon же на интервью всегда есть человек - эта должность называется bar raiser, - задача которого убедиться, что ты лучше, чем 50% работников компании. Это колоссальное давление!
Но я отказался от интервью в Amazon не из-за этого, а потому что мои знакомые, которые там уже работали, озвучили зарплату, которую там платят, - и это не выше, чем было у меня. А еще, получи я оффер, должен был бы ездить в лондонский офис, а это час в одну сторону.
Плюс в Amazon есть такая вещь, как to be on call: раз в 4 недели каждый разработчик должен быть доступен 24/7. Сотрудников на дежурстве могут поднять среди ночи - и заставить фиксить проблемы. У нас же в компании такого не было. Поэтому решил, что овчинка не стоит выделки.
В Microsoft я пишу код на .NET - подробности, конечно, раскрывать не могу. Мы разрабатываем систему, которая переносит большое количество данных, связанных с климатом и погодными изменениями, - так что можно сказать, что я работаю по специальности (смеется). Ирония судьбы!
«В Америке не терпят отговорок, даже если они адекватные. А в Британии ответят: окей!»
Сначала я жил в Рединге, а сейчас - в Брэкнелле (это городок юго-западнее Лондона). Он находится посреди кластера IT-компаний. И зарплаты там почти такие же, как в столице (не считая FAANG и хедж-фондов, где платят больше).
Рядом с Брэкнеллом есть сосновый лес, что для Англии большая редкость, - и мне это напоминает Беларусь. Здесь я начал бегать, хотя раньше у меня это не получалось, - и делаю это с удовольствием, потому что вокруг настолько красиво и воздух свежий.
Это очень зеленый, тихий город - без столичной суеты, тут под окнами птицы поют. Но если нужно, я сажусь на поезд, и через час я на станции «Ватерлоо» - в самом центре Лондона.
В столице много финансовых компаний - трейдинговых и хедж-фондов. И это понятно: Лондон держится на том, что там есть биржа, а многие местные IT-компании обслуживают лондонскую биржу.
А так, в принципе, как везде: среднестатистические компании создают софт для разных индустрий.
Отношение к работе спокойное. Если мы сравним с Америкой, то там, например, не терпят отговорок, даже если они адекватные: у тебя не получается что-то заделиверить до дедлайна - и у тебя есть на то веские причины. В США скажут: «Ох, опять эти извинения!» А в Британии ответят: «Окей!» - это считается нормальным, если только ты не начинаешь этим злоупотреблять и вся твоя работа не состоит из таких отговорок.
«Никто не стремится быстро погасить ипотеку - это невыгодно»
Север нельзя сравнивать с югом Англии - это как будто бы уже другая страна.
Когда я жил на севере (в Скриптоне), я платил 370 фунтов (483 доллара) в месяц за съем квартиры с двумя комнатами и залом. Но когда я переехал на юг, мне пришлось выложить 700 фунтов (914 долларов) за небольшую студию. Вот так отличаются цены на аренду жилья. В Лондоне сейчас одна комнатка стоит почти 1000 фунтов (1300 долларов) в месяц.
Так что цены зависят от региона. Зарплаты - тоже. Я не буду называть сумму, которую получаю, скажу, что она шестизначная.
Налог в Великобритании прогрессивный: если у тебя доход до 12 тысяч фунтов (15,6 тысячи долларов) в год - ты не платишь совсем ничего. Тот, кто зарабатывает от 12 до 50 тысяч фунтов (до 65,3 тысячи долларов), проходит первый пороговый налог - он платит 20% от того, что зарабатывает сверх 12 тысяч в год.
После 50 тысяч тебе приходится платить уже 40%. А если твой годовой доход доходит до 125 тысяч фунтов (163,3 тысячи долларов) - ты будешь платить уже 45% (а еще после 100 тысяч фунтов (130 тысяч долларов) дохода у тебя уменьшается тот первый порог в £ 12 тысяч).
Что еще: люди, которые работают как контрактники, ищут способы, как платить меньше налогов. Есть разные схемы: например, мой коллега открыл фирму и трудоустроил туда свою неработающую жену, насчитывает ей минимальную зарплату - и налог за это не платит.
Здесь мало кто покупает квартиры - у всех дома. Покупать их до недавнего времени было очень выгодно, так как здесь ипотека маленькая. Те, кто взял сейчас, платят от 6 до 8%, но, например, еще недавно ставка центробанка была около 1% - и все платили 2% за ипотеку. И это значительно меньше, чем ты бы платил за аренду.
Никто не стремится погасить ипотеку - это невыгодно. Например, я этого точно не буду делать: у меня еще старый процент - 2%, я его зафиксировал.
Я смотрю, сколько стоят дома на моей улице - они выросли в цене намного больше, чем тот процент по ипотеке, который я заплатил и еще заплачу. Поэтому я не вижу смысла расставаться с деньгами сразу. Ипотеку здесь обычно берут на 25−30 лет.
Но уж если очень хочется, то лет за десять сеньор-разработчик погасит ипотеку (может быть, за пять). Зависит опять же от региона: в каком-нибудь Брэдфорде, где дома можно найти меньше чем за 100 тысяч фунтов, - там можно и за пару лет выплатить ипотеку. Особенно если условный разработчик только живет в Брэдфорде, а работает удаленно на лондонскую компанию. На юге Англии ему будет тяжелее, потому что здесь дома стоят около 300−500 тысяч фунтов (392−653,4 тысячи долларов), но тоже подъемно.
«Какое-то время я даже не упоминал в своем резюме, какое у меня образование. И никто не спрашивал»
Федор часто пишет в Threads о том, что в IT можно прийти, минуя университет, и что высшее образование в принципе программисту не нужно, - и за это сталкивается с хейтом (в основном от разработчиков из постсоветских стран).
В Европе никто не считает программиста с дипломом более «трушным», чем самоучку. Какое-то время я даже не упоминал в своем резюме, какое у меня образование. И никто не спрашивал. Обычно в вакансиях в Британии пишут: degree or equivalent, и под вторым они понимают опыт в этой профессии - и если он есть, то уже не так важно, в какой области у тебя образование.
Сам я в роли нанимателя тоже обращаю внимание на 2−3 места работы или читаю описание, что они делали. Вниз - туда, где написано, какое у них образование, - даже не пролистываю. И другие люди делают так же - я точно это знаю.
У меня есть знакомый разработчик из Украины - без специального образования делает отличную карьеру здесь. Я постоянно работаю с американцами, а помимо этого помогаю университетам и буткэмпам в США создавать образовательный контент - и ни в Америке, ни в Англии я не видел разницы между программистами с дипломами и без оных.
Университет не дает каких-то секретных знаний - ты можешь обучиться с помощью интернета, а все, что программист практикует, можно практиковать на любом компьютере.
Все знания есть в книгах и в интернете, а не только в головах двух-трех избранных (то есть преподавателей). И даже курсы таких топовых университетов, как MIT, есть на YouTube и на Coursera - бери и учись! Мне кажется, просто некоторым разработчикам обидно, что они потратили столько лет на то, на что тратить было не обязательно.
Кстати, ради интереса я посмотрел программу одного из ведущих техвузов Беларуси - не буду говорить какого. Вы тоже можете взять и сравнить с программой любого европейского университета - там куча предметов, которые вам как специалисту не понадобятся вообще никогда в жизни.
Всесторонние развитие - ну, может быть. Но я давно преподаю, а также менторю разработчиков - и знаю: что человек не использует, он забывает. Так же как я сейчас не вспомню биологию, которую когда-то изучал.
Но я согласен с одним: самообучающемуся программисту нужен ментор, иначе ему будет сложно понять, что ему понадобится, а что - нет. Без поддержки можно зайти в тупик. И это плюс структурированного обучения - как в вузах. Но, с другой стороны, буткэмпы дают то же самое.
Финальное. Чему учиться джунам?
Я бы порекомендовал изучать C# и .NET. В начале своего пути я думал: может, мне посмотреть Java или какие-то другие языки и платформы, но на C# было много вакансий, а после 2016 года - еще больше. Также вы не ошибетесь, если возьмете JavaScript - этот язык очень востребован.
Читайте также на devby.io:
«Сквозь дым проходит Илон Маск». Беларус уехал в США и работал с Apple и Tesla
«Годами долбил опенсорс». Как стать Microsoft MVP? Спросили у четырёхкратного обладателя
Три компании - 0 офферов. История программиста который уволился ради FAANG