💪🔋👨‍💻 97 советов по продуктивности для программистов и ТОП-6 самых важных

Вспомните себя младшим разработчиком. Какие советы по повышению продуктивности вы бы дали себе? Какие важные уроки вы усвоили, будучи разработчиком?

Оригинальные комментарии доступны по ссылке.

Пользователь Anastasia задала вопрос:

Вспомните себя младшим разработчиком. Какие советы по повышению продуктивности вы бы дали себе? Какие важные уроки вы усвоили, будучи разработчиком?
Пользователь Melvyn Sopacua предложил следующее:
  • Думайте абстрактно и используйте готовые решения. Абстракция – это основа программирования.
  • Не изменяйте ничего в get.
  • Избегайте золотого молотка. Нет единого способа сделать что-то, поэтому научитесь заранее формулировать варианты, плюсы и минусы и выбирать тот, который подходит для конкретной ситуации. Также избегайте направлений (культур), которые навязывают этот «единственный способ сделать что-то».
  • Форматирование кода – это не то, на что стоит тратить время в нашем веке. Выберите проверенный форматтер, настройте и работайте с ним.
  • Баги будут. Баги не определяют самооценку или компетентность, поэтому избегайте корпоративной культуры, которая заставляет чувствовать себя хуже из-за ошибки в коде. Вместо этого, возьмите ошибку, проанализируйте ее (попросите помощи у старших, если застряли) и исправьте.
  • И последнее, но не менее важное: сообщение о фиксации – это не о том, что вы сделали (я могу прочитать это в gig log -p), а о том, ПОЧЕМУ вы это сделали. О контексте изменения. Справочная информация. Резюмируйте анализ. Это поможет вашему будущему «Я», новому товарищу по команде или человеку, исправляющему ошибки, понять код и то, что с ним происходило в течение времени.
🤔 У меня ничего не получается: как правильно просить о помощи коллег
Пользователь Victor A. Barzana:
  • Используйте популярные проекты, чтобы их было проще сопровождать.
  • Слушайте других, но формируйте собственную точку зрения.
  • Просматривайте коммиты перед отправкой, это позволит отловить ошибки прежде, чем их увидят другие, лучше потратить 10 минут своего времени, чем 1 человеко-час коллег.
  • Не обфусцируйте/минимизируйте код на ранней стадии, оставьте эту работу компиляторам, минификаторам, упаковщикам.
  • Пишите читабельный код, не комментируйте, если код очевиден. Для этого используются понятные имена переменных/методов.
  • Читайте статьи каждый день, чтобы находить посты вроде этого.
  • Общайтесь, задавайте глупые вопросы коллегам, это не должно быть проблемой.
  • Составьте список непонятных задач, попросите кого-нибудь объяснить это своими словами, обычно это работает лучше, чем просмотр кучи видео на YouTube или посещение онлайн-курсов. Вместо этого, сосредоточьтесь на том, что любите, не нужно знать все, но иногда нужно просто получить быстрые ответы.
Пользователь Rolf Streefkerk:
  • Сообщение о фиксации должно быть связано с фактическими номерами проблем на доске Канбан, чтобы документация, проблемы и ошибки отслеживались до коммитов кода.
Пользователь Jane:
  • Знайте свою среду разработки и инструменты.
  • Знайте свой редактор, как свои 5 пальцев.
  • Берегите себя. Хорошо спите, правильно питайтесь, давайте отдых голове, занимайтесь хобби – живите здоровой и интересной жизнью вне работы.
  • Документируйте код для себя и команды.
  • Отслеживайте рабочее время. Используйте бесплатный счетчик времени, чтобы записывать время, которое потратили на задачи, документирование важных действий и этапы работы.
  • Практикуйте ведение дневника. Например, таблицы в Notion, чтобы записывать привычки, связанные со сном, едой, спортом, активностью, отслеживать продуктивность и настроение. Взглянув на заметки через месяц, вы увидите, что дает энергию и удовлетворение от жизни, а что высасывает ее.
  • Медитируйте, чтобы остановить блуждание ума.
  • Практикуйте благодарность. Это отличный инструмент из области позитивной психологии, который при ежедневном использовании перестраивает разум и учит чувствовать себя более позитивно.
  • Делайте перерывы. Если чувствуете, что застряли, прогуляйтесь на свежем воздухе, дайте глазам отдохнуть и побалуйте себя чашечкой кофе.
Пользователь Aman Jaiswal:
  • Не спешите кодировать. Сначала планируйте. Спланируйте в голове, а написание окончательного варианта займет немного времени.
Пользователь Stasy Barns:
  • Будьте стоиком. Стоицизм учит максимально использовать то, что есть, быть упрямым, учится на ошибках и помнить о том, что происходит в жизни и карьере.
  • Купите наушники с шумоподавлением. Работаете ли в офисе или дома, вам нужно сосредоточиться на том, чтобы работать в потоке.
  • Занимайтесь спортом, чтобы оставаться в форме, быть здоровым и снимать стресс.
Пользователь Atharva Shirdhankar:

Я все еще джуниор, поэтому у меня нет особых советов по продуктивности. Но я должен чем-то поделиться, как джуниор.

  • Делитесь знаниями с другими в формате статьи или краткого пояснительного видео. Если делитесь знаниями в статье, это поможет другим и улучшит навыки написания документации.
  • Пробуйте сделать вклад в открытый исходный код. Это поможет получить опыт работы над реальным и широко используемым программным обеспечением/проектом. И поможет изучить большую кодовую базу.
  • В наши дни работа разработчика становится удаленной, поэтому полезно иметь навыки сотрудничества и работы в команде. Публичные выступления дают преимущество.
  • Пейте больше воды, чем кофе, когда кодите.
  • Будучи джуниором, используйте Twitter, чтобы узнавать новое от профессиональных разработчиков через их твиты/потоки и твиттер-пространства.
Повышаем свою продуктивность: 6 ключевых факторов
Пользователь Calogero Guagenti:

Очень важно:

  • Тренировка 30 минут каждый день.
  • Пейте достаточно воды.
  • Не бойтесь задавать глупые вопросов (глупых вопросов не бывает).
  • Слушайте других, но думайте своим умом.
  • Читайте статьи, связанные с текущими задачами. Каждый день!
  • Работайте умом, а не силой. Не кодируйте 14 часов подряд!
  • Делитесь знаниями, не ожидая ничего взамен.
  • Делайте ошибки.
  • Будьте честны с собой.

Важно:

  • Планируйте, затем кодируйте.
  • Не усложняйте простую задачу.
  • Повторно используйте существующий код.
  • Заставьте работать, а потом оптимизируйте.
  • Пишите понятный код.
  • Не используйте бета-версии в продакшене.
  • Используйте кэш, но осторожно.
  • Документируйте код.
  • Оценка != Крайний срок.
Пользователь DarkWiiPlayer:
  • Сначала планируйте, а потом пишите код.
  • Автоматизируйте вначале себя.
  • Постоянно рефакторьте.
Пользователь sudarshan:
  • Используйте стоячий стол и инвестируйте в эргономичное кресло.
  • Слушайте, прежде чем говорить.
Пользователь Ihor Klymenok:
  • В первую очередь приоритеты. Расставляйте приоритеты, чтобы избавиться от ненужных задач.
  • Понимание предметной области. Это позволит предложить простое решение и сэкономить время и затраты на проект.
  • Делите задачи на умные и неумные. Не берите много умных или сложных задач за короткий промежуток времени. Комбинируйте их с рутинными, где можно надеть наушники и делать работу.
  • Определите свою скорость. Попробуйте оценить и отследить реальное количество времени, потраченного на выполнение задачи.
Пользователь Adrian Matei:
  • Пишите читабельный и несложный/навороченный код – позже вы скажете себе спасибо.
  • Копируя код с StackOverflow, пытайтесь понять, что происходит – используйте диспетчер фрагментов, чтобы сохранить полезные фрагменты, чтобы снова долго не искать в Google.
  • Сначала читайте документацию, а затем ищите записи в блоге, чтобы решить проблему.
  • Читайте исходный код, если проект с открытым исходным кодом.
  • Не продавайте себя дешево.
  • Практические проекты, сторонние проекты – лучший способ изучить технологию.
Пользователь Jeremy Friesen:
  • Научитесь записывать, как выглядит выполненная работа. Если я работаю над функцией, это может выглядеть как написание интеграционного теста (например: «Когда я перехожу на эту страницу, делаю вот так, то вот что я увижу»). Или я могу написать один тест. Или я могу просто записать, как будет выглядеть результат без написания теста. Это помогает сформулировать цель куска кода.
Пользователь Anam.DevDes:
  • Когда я устроился на первую работу, я хотел, чтобы у меня было больше опыта в оценке времени, необходимого для того, чтобы что-то сделать. Не уверен, была ли это моя чрезмерная уверенность в себе, наличие четкой дорожной карты для задачи в моей голове (обычно мешали неожиданные ошибки) или и то и другое, что заставляло меня обычно говорить меньше, чем требовалось на самом деле. Это разочаровывало меня и моих товарищей по команде, пока старший не помог мне с этим процессом. Когда вас спрашивают, сколько времени займет выполнение той или иной задачи, называйте цифру больше, чем есть на самом деле.
Пользователь Sachin N:

Наряду с правильным набором инструментов, правильное мышление имеет важное значение.

  • При 12 часовой работе, вы, вероятно, продуктивны около 3-х часов.
  • Всего нужно 4 часа глубокой работы с регулярными перерывами.
  • Делайте небольшие перерывы после работы в течение 45-60 минут.
  • Определите задачи, которые требуется сделать за день.
  • Записывайте, что сделали за день перед сном.
  • Спите 8 часов.
Как не «сгореть на работе», если ты программист
Пользователь leob:
  • Не пытайся выучить всё. Это пустая трата времени. Изучите основы, один или два языка и фреймворки. И все. Специализируйся – жизнь слишком коротка, в десятке вещей не преуспеешь.
  • Теперь я очень верю в автоматизированное тестирование, хотя в 95% моих проектов я его не проводил, но теперь убежден, что должен – при хорошем исполнении оно экономит время, повышает качество и даже может помочь в разработке.
Пользователь Danish Saleem:

Основные уроки, которые я усвоил в процессе обучения в качестве разрабочика:

  • Планируй логику.
  • Синтаксис – это игра.
  • Упражняйся.
  • Медитируй.
  • Исправляй.
  • Отлаживай.
Пользователь irvv17:
  • Не торопись, а наслаждайся процессом изучения нового.
  • Изучая разные вещи одновременно (как в школе), не перегружай себя одними и теми же темами в течение длительного периода времени.
Пользователь Joseph:
  • Изучите команды CLI для поиска, замены и редактирования на лету.
  • Сохраняйте фрагменты и тщательно документируйте.
  • Работа с людьми – самая трудная часть работы.
Пользователь Dan Walsh:
  • Признайте, что будучи джуниором, вы не можете писать (тем более понимать) сложные шаблоны кода и синтаксис. И это нормально. Решение проблемы Х не будет таким элегантным и эффективным, как у разработчиков с 20-летним стажем и это нормально. Не торопите события, наслаждайтесь путешествием, не переставайте задавать вопросы, а когда достигните 20-летнего опыта, помните, что все еще есть чему учиться.
Эффективная удалёнка: как продуктивно использовать дистанционную работу
Пользователь Jean-Mark Wright:

Вот несколько советов, которые я усвоил за эти годы:

  • Глупых вопросов нет.
  • Читайте, читайте и еще раз читайте! Это один из верных способов обеспечить рост на пути к программному обеспечению.
Пользователь Adam Skinner:
  • Научитесь использовать свой IDE. Изучите горячие клавиши, узнайте его возможности.
  • Если вы профессионал, инвестируйте в лучшие инструменты. Вы инвестируете в свою эффективность и результативность.
  • Научитесь определять, когда вы перегорели. Прекратите работу на день или вздремните, или еще что-нибудь. Если этого не сделать, то зря потратите время и создадите новые проблемы на завтра.
  • Сосредоточьтесь на основах. Изучите свой язык и его синтаксис.
  • Помечайте в коде намерения, а не их реализацию.
  • Имена должны нести смысловую нагрузку.
  • Не сокращайте имена переменных.
  • Следуйте идиомам языка.
***

Что в итоге

  1. Сначала планируйте, думайте, закладывайте логику, а потом переходите к кодированию.
  2. Отдыхайте и делайте перерывы.
  3. Читайте статьи.
  4. Знайте свою IDE.
  5. Инвестируйте в хорошие наушники с шумодавом, кресло и инструменты, которые позволят погрузиться в процесс и повысят эффективность и продуктивность.
  6. Не бывает глупых вопросов.

Материалы по теме

Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека программиста»

Источники

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ

Denver 83
24 февраля 2022

✔️ Ключевые различия между Agile, Scrum и Kanban

В небольшом обзоре попробуем сравнить популярные подходы к управлению проек...