От хранителя до инженера-программиста: удивительная история Мии
Миа рассказывает о том, как она стала инженером-программистом в свои 30 лет.
Расскажите нам о себе
У меня был тернистый путь к тому, чтобы стать программистом. Свой первый «Hello World» я написал в 32 года. До этого я был уборщиком, секретарем, младшим капралом в морской пехоте США. Только когда я сломал себе спину, я понял, что мне нужно найти работу, в которой подъем/толкание тяжестей не является частью требований к работе.
На сегодняшний день я работаю разработчиком C#.Net уже более девяти лет. Я работаю в компании, которая входит в список Forbes Global 2000. Я всегда на связи в отделе, я наставляю других разработчиков и использую свой нетрадиционный опыт для создания уникальных решений, которые приносят пользу клиентам.
У меня есть две страсти в жизни, без которых я не могу жить: программирование и выездка. Я нахожу их жутко похожими во многих отношениях. Они оба требуют предельного соблюдения деталей. Они оба требуют творческого подхода и объединения иногда разрозненной информации уникальными способами для создания чего-то, что плавно перетекает воедино. И они оба требуют огромного терпения и логики, чтобы избавиться от любых возникающих проблем.
Я люблю программирование. Я бы сделал это бесплатно, если бы мог себе это позволить.
Как вы впервые начали свою карьеру в сфере технологий?
Чтобы войти в дверь, я получил степень бакалавра в области электронного бизнес-дизайна. В настоящее время это не существующая степень, но она включала в себя все курсы СНГ с дополнительными юридическими курсами, специально ориентированными на коммерческое право.
Мое первое предложение о работе после выпуска и единственное предложение в то время было в качестве программиста на Cobol (даже тогда Cobol был старым и устаревшим) в компании в часе езды.
Мне было трудно просунуть ногу в дверь. У меня был диплом с отличием, многочисленные рекомендации от профессоров, стипендия от крупной компании, и я закончил учебу в два раза быстрее, работая неполный рабочий день. В моей колонке было много плюсов, но меня постоянно обходили стороной.
Я обнаружил, что мне не хватает многих основных концепций программирования. Только когда я действительно сосредоточился на их изучении и смог ясно их объяснить, я начал получать предложения о работе. Мое резюме помогло мне пройти через HR. Моя способность правильно объяснять концепции, когда меня спрашивают, позволила мне получить работу.
Изучите концепции, поймите теории и покажите, что вы можете правильно применять концепции. Это то, что даст вам работу. Трудно войти в дверь, но не оставляйте попытки. Следите за своим будущим и боритесь за него.
Как вы развивали свои технические навыки?
Когда я только начинал, онлайн-курсы не были чем-то особенным, поэтому я проводил много времени в библиотеке, читая все их книги по программированию. Когда я мог себе это позволить, я начал инвестировать в сертификаты Microsoft, чтобы получить сертификат Microsoft Certified Technology Specialist.
Хотя работодатели не были в восторге от сертификатов, я нашел их очень полезными. Это не только улучшило мои навыки и знания, но и сдача экзаменов придала мне уверенности в том, что я знаю свое дело.
Мне очень нравятся онлайн-курсы, предлагаемые сейчас. Я также считаю, что подкасты — отличный ресурс, когда я езжу на работу или занимаюсь повседневными делами дома (уборка). Они помогают расширить мои знания о новейших технологиях и инструментах. В свободное время я пробую разные методы или новые языки программирования для программ, которые хочу создать для себя. Я считаю, что практика является наиболее полезной и помогает мне более полно изучить концепции.
Какими наиболее важными навыками должен обладать человек на вашей должности?
Помимо фактического знания того, как писать код, очень важно уметь воспринимать критику и развиваться на ее основе. Не только когда вы просите об обратной связи, но и когда вы облажались (что вы и сделаете).
Умение излагать сложные понятия простыми способами. Не упрощая, а понимая концепции настолько полно, что вы можете объяснить их в самой простой форме.
Прежде чем говорить с клиентом о том, как решить проблему или добавить новые функции, убедитесь, что вы знаете свой процесс вдоль и поперек и можете объяснить его пятилетнему ребенку. В противном случае вы никогда не найдете правильный ответ для клиента, потому что никто из вас не поймет, как работает процесс.
Вы можете быть лучшим программистом в мире, но если ваш клиент недоволен, то никто не счастлив. Иногда этот клиент — ваш коллега; иногда это кто-то на другом конце света. Знай своего клиента. Поймите, какую проблему они пытаются решить с помощью вашего кода, и выясните, как помочь им решить ее. Если вы сможете это сделать, вы всегда будете выглядеть как рок-программист (при условии, что ваш код не сломается).
Сложно ли кодировать?
Кодить не сложно. Это небольшие блоки функций, объединенные для создания конечного решения. Самое сложное для меня — это полное понимание того, как клиент ожидает, что это будет работать. Я пишу программное обеспечение для налогообложения и бухгалтерского учета, и некоторые из требований чрезвычайно сложны. Я трачу 80% своего времени на выяснение требований и 20% на кодирование.
Часть кода, которую я считаю технически сложной, связана с объединением вещей для создания надежной и эффективной функциональности. Я хочу, чтобы блоки кода были самыми компактными, но при этом оставались понятными для следующего разработчика, который к ним прикоснется.
С какими трудностями вы столкнулись в своей карьере? Как вы их преодолели?
Недостаток уверенности подвел меня несколько раз. Несколько лет назад меня попросили поделиться своим экраном с несколькими очень старшими инженерами, пока я писал код (с намерением, что они помогут, если я столкнусь с трудностями). Я замерз. Я даже не мог вспомнить, как создать переменную. Это было унизительно. В конце концов я сказал им, что напишу это сам и возьму один из них, если что-то застряну.
Я работал над преодолением этого, практикуясь в написании кода перед людьми, которым доверял. Чем больше я выталкивал себя за пределы своей зоны комфорта, тем легче мне было чувствовать себя комфортно на новом уровне. Я все еще беспокоюсь, когда пишу код, пока за мной наблюдают (интервью), но я больше не замираю полностью.
Продолжайте выходить за пределы своей зоны комфорта. Будь то изучение нового языка или инструмента, посещение конференций, участие в форумах или соревнования по программированию. Продолжать стараться.
Является ли карьера в области технологий чем-то, чем может заняться каждый? Что важнее всего учитывать?
Определенно. Если у вас нет технического образования, вы привнесете другую, столь необходимую перспективу в любую техническую область, в которую вы решите войти. Кроме того, в технике так много разных должностей, если вам не нравится быть программистом на полную ставку.
Там, где я работаю, наш вспомогательный персонал работает рука об руку с клиентами, чтобы собрать требования. Это люди, которым нравится помогать другим людям, и они отлично разбираются в сложных проблемах. Они происходят из всех слоев общества, и хотя они не могут быть традиционными программистами, они хорошо понимают код и модели данных. Они являются неотъемлемой частью компании.
Единственное, что я считаю самым важным в любой области технологий, — это просто оставить свое эго за дверью. Иногда это чрезвычайно сложно, но я обнаружил, что именно в такие моменты я больше всего узнаю, больше всего взрослею.
Какой совет вы бы дали тем, кто думает о карьере в сфере технологий?
Вы будете писать плохой код. Вы будете совершать ошибки. У вас будет много раз, когда вы захотите бросить курить.
Протолкните его.
Это самая разочаровывающая, сложная и вознаграждающая область, в которой я когда-либо работал. Я бы не променял ее ни на что в мире.
Моя последняя мысль… и, возможно, я нарушаю код программиста, говоря это, но я не отдал свою жизнь, чтобы стать программистом. Мне очень нравится ездить верхом и владеть лошадьми, и время, потраченное на это, для меня священно. Что я понял за почти десять лет в этой области, так это то, что вы все еще можете прогрессировать как программист, поддерживая здоровый баланс между работой и личной жизнью.
Не то чтобы у вас не было периодов, когда вам нужно было уделять огромное количество времени программированию (или работе), но в целом… не забывайте выделять время для семьи, друзей и хобби. Это то, что сохранит ваш ум свежим и позволит вам по-прежнему чувствовать стремление стать лучшим программистом, которым вы можете стать.
Где мы можем найти вас?
Вы можете найти меня в LinkedIn.
Если вам нужны вдохновляющие истории о женщинах в технологиях и ресурсах по программированию, подпишитесь на информационный бюллетень Code with Veni — Women in Tech здесь.
Если вам понравился этот пост, нажмите 💚 ниже, чтобы другие люди увидели его здесь, на Medium. Подпишитесь на меня, чтобы не пропустить другие статьи о женщинах в сфере технологий и о том, как научиться программировать.
Первоначально опубликовано на сайте blog.codewithveni.com 14 января 2017 г.