Привет, меня зовут Джонни, я младший разработчик в BuildEmpire.

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

Есть большое заблуждение о математике; что когда вы говорите что-то правда, это всегда правда.

Нет, правда - это следствие сделанного ранее выбора. Если вы выберете разные предположения, вы получите разные истины.

Такой образ мышления, такой подход к программированию вполне естественно, по крайней мере, на мой взгляд. Компьютеры - это, по сути, логические машины, и логическое мышление, необходимое для математики, следует за программированием.

Однако после получения диплома моя мама заболела. В течение нескольких лет она перенесла несколько инсультов и ТИА, которые повлияли на нее по-разному. После университета я помогала ухаживать за мамой, а также была волонтером в местной благотворительной организации по охране психического здоровья. Когда моя мама выздоровела, я стал больше заниматься волонтерством. Все это время я программировал как хобби; веду личный веб-сайт и участвую в нескольких проектах с открытым исходным кодом.

Смена обстоятельств

Когда мама выздоравливала хорошо, мне пора было взглянуть на мою личную карьеру. Мне нравилось программировать, поэтому я решил заняться веб-разработкой. Я удостоверился, что мое резюме было актуальным и презентабельным, и зарегистрировал учетные записи на обычных досках вакансий, то есть действительно, CWjobs и т. Д.

Все произошло в мгновение ока за две-три недели. Я принял, не знаю, сколько звонков от рекрутеров, и один искал кого-нибудь на работу в быстрорастущей компании под названием BuildEmpire. Я побеседовал с рекрутером, который взял еще несколько моих данных и передал их вместе с моим резюме на рассмотрение в BuildEmpire.

Время интервью

Мой процесс собеседования состоял из трех этапов. Первым было телефонное интервью. Хотя в то время я нервничал, оглядываясь назад, я вижу, насколько расслабленным было интервью. Они уже просмотрели часть моего кода, который был в моем профиле GitHub. Вопросы в основном касались моего мышления и того, почему я принял некоторые решения в своем коде, который у меня был. Я ни разу не чувствовал, что они пытаются задать вопрос с подвохом или сбить меня с толку по техническим причинам.

Затем они дали мне пройти тест на дому. Это было относительно просто. Напишите веб-приложение, которое может хранить заказы, сделанные клиентом. Уловка, никаких рамок. Они хотели увидеть весь процесс, а не просто следовать принятым по умолчанию предположениям / решениям, которые принимает фреймворк.

Наконец, меня пригласили на личную встречу.

Утро началось для меня не очень хорошо. За ночь вокруг того места, где я живу, выпало 6 дюймов снега.

Ближайшая автомагистраль была закрыта из-за аварии, и к тому времени, когда я пробрался на другую автомагистраль, движение было остановлено.

BuildEmpire понимали, что когда я приехал немного поздно, их нынешним сотрудникам было трудно добираться до работы из-за погоды. Встреча прошла хорошо, у меня была возможность задать вопросы о компании и закончилась официальным предложением о работе. 😀

Поселиться в

Я чувствую, что хорошо освоился в BuildEmpire. Самая большая проблема - это дорога на работу. В частности, возвращение домой. Трафик убийственный! У BuildEmpire есть часы гибкого графика, что позволяет мне не замечать пробок по дороге на работу. К счастью, я нахожусь в процессе переезда в Манчестер и скоро заставлю Metrolink заработать.

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

Totara - это полнофункциональная система управления обучением (LMS), которая может делать практически все, что вы хотите. Это отлично подходит для клиентов, которые знают, что их требования, скорее всего, будут выполнены. Однако это означает, что кодовая база довольно велика.

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

Гибкий

Ах да, Agile. Это было еще одно изменение в переходе к профессиональному программированию.

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

В BuildEmpire мы следуем структуре Scrum, чтобы все было организовано. Это включает в себя обычные встречи для рассказов и ежедневные встречи каждое утро. Описание этого моей сестре было встречено с некоторым замешательством. Очевидно, школьный персонал должен стать лучше организованным!

Я работаю в BuildEmpire уже несколько месяцев, и мои успехи как программиста неизмеримы. Большая часть этого - система код-ревью. Исправив ошибку или добавив новую функцию, вы делаете запрос на внесение изменений вашего кода в основной репозиторий кода. Перед объединением изменений они проверяются другими членами команды. Могут быть сделаны запросы, предложены улучшения. В самом деле, не менее важно, чем проверяемый мой код, - это то, что я проверял код более старших членов. Даже если мне нечего предложить, просто просмотреть их код и попытаться понять, почему они сделали то, что они сделали, - невероятно поучительный процесс. Открытый, доброжелательный характер этих обсуждений, я чувствую, является одним из основных источников моих улучшений за эти месяцы.

Кроме того, есть все остальное, что замечательно в работе в BuildEmpire. Посмотрите, что наш главный разработчик Майкл сказал о компании в нашем последнем сообщении в блоге.

Мой совет

Мой совет всем, кто приступает к своей первой работе в области программирования, - расслабьтесь.

В программировании полно сложных проблем, и от вас, как от младшего разработчика, не ожидается, что вы сразу решите их все. Сложные проблемы решаются путем разделения их на более мелкие и, надеюсь, более простые. Это часть такого процесса, как Agile / Scrum. Чтобы попытаться заранее спланировать, как решить проблему в ближайшие дни или недели. Старшие члены команды должны помочь на этом этапе, чтобы порученные вам задачи были управляемыми. Если нет, то говорите.

Компания, в которой нельзя задавать вопросы и учиться, - это не та компания, в которой вы хотите работать.