Содержимое
Привет! После обучения на курсах при компании и стажировки наконец-то стала Junior Software Developer (спасибо вам за вдохновение и личный пример успеха). Вопрос такой: есть ли у вас полезные советы для джунов основанные на личном опыте? Во-первых, поздравляем нашу читательницу, приятно слышать. Самого вопроса я так или иначе постоянно касаюсь в канале, но давайте подытожим и соберём рекомендации для новичков в один список. 1. Проявляйте любознательность: вовлекайтесь в рабочие процессы, интересуйтесь, какими проектами ещё занимается компания, какие есть направления работы (кроме вашего), какие технологии используются, что делают другие коллеги. 2. Будьте активны и внимательны: на совещаниях и рабочих обсуждениях вникайте во всё, что говорят коллеги, старайтесь уловить суть, задавайте вопросы, когда что-то непонятно. Предлагайте свои идеи или выражайте сомнения, если они у вас есть. 3. Задавайте вопросы: когда что-то непонятно - не молчите и не стесняйтесь. Задавайте даже самые тупые (на ваш взгляд) вопросы - главное чтобы в голове всё прояснилось. 4. Убедитесь, что вы поняли задачу: если у вас нет полного и исчерпывающего понимания своей задачи - уточняйте и переспрашивайте до тех пор, пока всё будет понятно. Если вы уверены, что поняли задачу - переформулируйте её своими словами, чтобы убедиться, что ваш руководитель и вы одинаково её понимаете: «Я правильно понимаю, мне нужно сделать вот это вот в такие сроки, и это нужно для того, чтобы то и то?» - так вы избежите игры в «испорченный телефон». 5. Грамотно просите о помощи: тут нужен баланс - с одной стороны, вам нужно получить всю необходимую информацию, с другой стороны - ценить время ваших коллег. Задача коллег - направить вас в верном направлении, а не сделать работу за вас. Прежде чем попросить о помощи, убедитесь, что вы сделали всё, чтобы найти решение самостоятельно: поищите ответ в гугле, в документации, опробуйте разные решения - и потом уже идите к коллеге за советом, заодно расскажете, что уже попробовали, и что именно не получилось. Если у вас много-много вопросов - запишите их и попросите коллегу уделить вам полчаса времени, чтобы их задать. Не надо отрывать коллегу каждые 5 минут с очередным вопросом - иначе он весь день будет заниматься только вами. 6. Налаживайте связи: у других коллег в компании (у тех, с кем вы не работаете тесно вместе) есть ценная информация, знания или технические скиллы, а, возможно, рычаги давления или доступ к каким-то ресурсам. Полезно иметь возможность при случае обратиться к подходящему человеку. 7. Отвечайте за результаты своей работы: не обещайте того, чего не сможете сделать. Если не удалось верно оценить сроки работы или возникли непредвиденные препятствия - сразу сообщайте об этом старшим коллегам. Если где-то накосячили - что-то сломали, что-то случайно удалили - расскажите об этом коллегам, не скрывайте - скорее всего, они что-то придумают. 8. Будьте осторожны: используя, скажем, git, убедитесь, что понимаете, что за команду вы собираетесь выполнить - не затрите нужный код в репозитории. Если у вас есть доступ к продовой базе данных - помните - 7 раз SELECT - 1 раз UPDATE. Если делаете что-то в базе данных руками, перед каждым UPDATE или DELETE открывайте транзакцию (например, командой BEGIN;) - потом убедитесь, что не удалили и не изменили ничего лишнего - и если произошло что-то нежелательное - откатите изменения командой ROLLBACK; 9. Оценивайте ресурсы: если вы написали программу, которая должна обработать много-много данных - прежде, чем её запускать, оцените, сколько времени занимает её работа на небольшом кусочке этих данных - возможно, для того, чтобы обработать все нужные данные, ей понадобитс 10 миллионов лет - и значит нужно переделывать. Оценивайте, сколько памяти и CPU нужно вашим программам - не факт, что их столько есть в наличии. 10. Пишите тесты. Даже если этого от вас не требуют. Когда пишете код - сразу думайте, как вы будете его тестировать. 11. Осваивайте незнакомые технологии. Задать вопрос автору блога можно здесь: @hum_it_bot