Программные (программные) навыки

Стажеры по разработке программного обеспечения: больше всего я хочу обучаемости

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

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

Я наткнулся на эти слова в статье Ингрид Сюй, в которой рассказывала о своем чувстве неполноценности после начала новой стажировки. Это заставило меня задуматься: после многолетнего опыта работы и наставничества со студентами университетов информатики - как из Китая, так и из США - что я буду искать в разработчике программного обеспечения, которому я поручен наставничеством?

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

Возможно, вы не знаете, как перевернуть строку на месте. Вы могли никогда не сделать git rebase. Возможно, вам понадобится освежить в памяти основные методы отладки. Для меня это не препятствие; но если мы собираемся работать вместе, а вы здесь, чтобы учиться, тогда, пожалуйста, пожалуйста, пожалуйста ... будьте готовы к обучению.

Почему я хочу, чтобы обучаемость превыше всех других качеств?

Обучаемость предполагает смирение

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

Все лето мы давали обратную связь: Помедленнее. Найдите время, чтобы хорошо обдумать проблему. Отформатируйте код так, чтобы он был чистым и читаемым, и вы будете делать меньше ошибок.

Все лето он кивал и улыбался.

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

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

«О, у меня есть очки», - сказал Джим. «Они прямо здесь». Он вытащил из рюкзака очки, показал их мне и положил обратно в рюкзак. «Я не ношу их, потому что они доставляют мне много хлопот, и я думаю, что в любом случае могу хорошо видеть без них».

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

Обучаемость культивирует любопытство

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

Я видел это в себе, когда учился в бакалавриате. Я видел это среди студентов, с которыми работал в материковом Китае.

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

Обучаемый стажер будет стремиться понять, и именно это пробуждает невероятное любопытство.

Представьте, что я наставляю вас и говорю вам, что первая строка вашего JS-файла должна выглядеть так:

import React from 'react'

И я говорю вам: «О, и очень важно, чтобы вы назвали свой импорт React с заглавной буквы R. Если вы назовете его как-нибудь еще, все сломается.»

Вы просматриваете оставшуюся часть файла и не видите React использованных где-либо еще. Это странно. Зачем вообще это импортировать? И почему так важно называть его React с большой буквы R?

Если бы вам не было любопытно, вы бы просто сказали: «Хорошо. Капитал Р. Понятно ». И вы бы продолжали повторять мои рекомендации по коду. Вы можете быть послушным, но не любопытным . хочу любопытных.

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

Тем, кто поддается обучению, любопытно узнать, почему одни вещи работают так, как они, и почему другие не работают так, как вы думаете. Обучаемый стажер стремится понять, и это любопытство заставляет его копать глубже. Если у стажера есть это, это открывает целый набор инструментов для профессионального развития: находчивость, предвидение проблем, продуманные решения.

Обучаемость требует творчества

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

Мне редко нужны быстрые решения. Стажер без возможности обучения немедленно отвечает: «Я понял. Я знаю, что нам делать ». Ой, ура. Первое задуманное решение всегда является лучшим. Отлично. Я послушаю. Я, наверное, даже не буду сопротивляться; это было бы бесполезно.

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

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

Креативное решение проблем - это такой актив в нашей отрасли. Для большей части того, что мы делаем, существует бесчисленное множество посредственных способов решения проблемы; но творчески мы находим это элегантное и идеально подходящее решение. Мы достигаем такого уровня открытости для творчества только в том случае, если нас учат. Если это есть у стажера, он уже на шаг впереди своих сверстников.

Вы стажер? Будьте внимательны.

Так что, может быть, вы похожи на Ингрид Сюй - теперь, после прохождения стажировки, вы не уверены, заметят ли ваши менеджеры и наставники все то, о чем вы не знаете. (Вероятно, так и будет.)

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

Итак, если вы идете на стажировку, имея в своем распоряжении только один актив: пусть это будет обучаемость. Я с радостью возьму это на себя за какой-нибудь язык, услугу или фреймворк.

Элвин Ли - разработчик полного цикла и удаленный сотрудник из Феникса, штат Аризона. Он специализируется на веб-разработке, технологическом консалтинге и создании прототипов для стартапов и малого бизнеса. Он доступен на Moonlight, где вы можете просмотреть его профиль или попросить нанять его для оказания услуг.