0 added
0 removed
Original
2026-01-01
Modified
2026-02-21
1
<p><a>#статьи</a></p>
1
<p><a>#статьи</a></p>
2
<ul><li>25 апр 2022</li>
2
<ul><li>25 апр 2022</li>
3
<li>0</li>
3
<li>0</li>
4
</ul><p>Заграничные советы о повышении продуктивности и профессиональном росте для тех, кто уже и так достаточно умный.</p>
4
</ul><p>Заграничные советы о повышении продуктивности и профессиональном росте для тех, кто уже и так достаточно умный.</p>
5
<p>Кадр: фильм "Железный человек 3"</p>
5
<p>Кадр: фильм "Железный человек 3"</p>
6
<p>Переводчик, начинающий UI/UX-дизайнер и UX-редактор. Интересуется новыми технологиями, любит путешествовать. Увлекается баскетболом во всех его проявлениях.</p>
6
<p>Переводчик, начинающий UI/UX-дизайнер и UX-редактор. Интересуется новыми технологиями, любит путешествовать. Увлекается баскетболом во всех его проявлениях.</p>
7
<p><strong>Об авторе</strong></p>
7
<p><strong>Об авторе</strong></p>
8
<p>Технический специалист, говорящий простыми словами об облачных и серверных технологиях, бэкенде, фронтенде и тестировании.</p>
8
<p>Технический специалист, говорящий простыми словами об облачных и серверных технологиях, бэкенде, фронтенде и тестировании.</p>
9
<p>Эта статья поможет усовершенствовать ваши навыки программирования, хотя в ней и не сказано ни слова о передовых методах написания кода или способах повышения его качества. Вы узнаете лишь десять простых способов выделиться среди других разработчиков.</p>
9
<p>Эта статья поможет усовершенствовать ваши навыки программирования, хотя в ней и не сказано ни слова о передовых методах написания кода или способах повышения его качества. Вы узнаете лишь десять простых способов выделиться среди других разработчиков.</p>
10
<p>В сферах CI/CD и DevOps происходит столько всего, что порой это похоже на дурдом, куда вы ещё не готовы переезжать. Но можно сэкономить время на разработке, автоматизировав некоторые часто выполняемые действия, например:</p>
10
<p>В сферах CI/CD и DevOps происходит столько всего, что порой это похоже на дурдом, куда вы ещё не готовы переезжать. Но можно сэкономить время на разработке, автоматизировав некоторые часто выполняемые действия, например:</p>
11
<ul><li>запуск ежедневно выполняемых скриптов, который можно запланировать;</li>
11
<ul><li>запуск ежедневно выполняемых скриптов, который можно запланировать;</li>
12
<li>стандартные команды. Вместо того чтобы использовать четыре команды для запуска приложения, объедините их в один скрипт/команду: npm run prepareSeedBuildStart, npm start или prepareSeedBuildStart.sh;</li>
12
<li>стандартные команды. Вместо того чтобы использовать четыре команды для запуска приложения, объедините их в один скрипт/команду: npm run prepareSeedBuildStart, npm start или prepareSeedBuildStart.sh;</li>
13
<li>ежемесячные запросы данных, которые можно запустить с помощью скрипта.</li>
13
<li>ежемесячные запросы данных, которые можно запустить с помощью скрипта.</li>
14
</ul><p>Кроме того, существуют инструменты, способные интегрироваться с другими программными средствами, что позволяет автоматически делиться статусами и обновлениями со всей командой разработки. Вместо того чтобы сообщать вашей группе о статусе развёртывания, используя Slack, можно просто добавить эту информацию в соответствующий скрипт. Время - деньги.</p>
14
</ul><p>Кроме того, существуют инструменты, способные интегрироваться с другими программными средствами, что позволяет автоматически делиться статусами и обновлениями со всей командой разработки. Вместо того чтобы сообщать вашей группе о статусе развёртывания, используя Slack, можно просто добавить эту информацию в соответствующий скрипт. Время - деньги.</p>
15
<p>Возможно, это звучит банально, но тем не менее многие допускают эту ошибку. Если нужно создать новое CRUD-приложение, не забудьте протестировать не только "счастливый путь" (happy path), но и "неверные пути" (invalid paths).</p>
15
<p>Возможно, это звучит банально, но тем не менее многие допускают эту ошибку. Если нужно создать новое CRUD-приложение, не забудьте протестировать не только "счастливый путь" (happy path), но и "неверные пути" (invalid paths).</p>
16
<p>К invalid paths относятся попытки сохранения без данных, чтение данных, которыми не владеет инициатор, обновление без обязательного поля и так далее. Если вы всё же полагаете, что эти задачи входят в список обязанностей тестировщика или кого-то ещё, задайте себе несколько вопросов:</p>
16
<p>К invalid paths относятся попытки сохранения без данных, чтение данных, которыми не владеет инициатор, обновление без обязательного поля и так далее. Если вы всё же полагаете, что эти задачи входят в список обязанностей тестировщика или кого-то ещё, задайте себе несколько вопросов:</p>
17
<ul><li>Если будет выявлен баг, кто будет нести за это ответственность?</li>
17
<ul><li>Если будет выявлен баг, кто будет нести за это ответственность?</li>
18
<li>Если баг будет выявлен в созданной вами фиче, кто, вероятнее всего, будет исправлять его?</li>
18
<li>Если баг будет выявлен в созданной вами фиче, кто, вероятнее всего, будет исправлять его?</li>
19
<li>Что лучше: если вы сами обнаружите баг и исправите его или если это сделает кто-то другой?</li>
19
<li>Что лучше: если вы сами обнаружите баг и исправите его или если это сделает кто-то другой?</li>
20
<li>Как это отразится на ваших навыках программирования?</li>
20
<li>Как это отразится на ваших навыках программирования?</li>
21
</ul><p>Думаю, нет смысла отвечать на эти вопросы. Надеюсь, что они заставят вас задуматься над тем, насколько важную роль тестирование играет в процессе разработки. Предположим, вам понадобится 15% дополнительного времени, чтобы протестировать фичу. Это позволит избежать:</p>
21
</ul><p>Думаю, нет смысла отвечать на эти вопросы. Надеюсь, что они заставят вас задуматься над тем, насколько важную роль тестирование играет в процессе разработки. Предположим, вам понадобится 15% дополнительного времени, чтобы протестировать фичу. Это позволит избежать:</p>
22
<ul><li>потери времени на исправление бага, который обнаружит другой член команды до выхода фичи в продакшен;</li>
22
<ul><li>потери времени на исправление бага, который обнаружит другой член команды до выхода фичи в продакшен;</li>
23
<li>необходимости возвращаться к старой фиче и исправлять баг.</li>
23
<li>необходимости возвращаться к старой фиче и исправлять баг.</li>
24
</ul><p>Оба сценария отнимут значительно больше времени, чем рекомендованный мною метод.</p>
24
</ul><p>Оба сценария отнимут значительно больше времени, чем рекомендованный мною метод.</p>
25
<p>Вы пообещали кому-то отправить файл через несколько минут? А как насчёт срочной услуги, о которой вас попросили в разговоре? Не забыли про сообщение, на которое обещали ответить "прямо сейчас"?</p>
25
<p>Вы пообещали кому-то отправить файл через несколько минут? А как насчёт срочной услуги, о которой вас попросили в разговоре? Не забыли про сообщение, на которое обещали ответить "прямо сейчас"?</p>
26
<p>Мы все прекрасно понимаем, что такие запросы должны быть оформлены в виде заявок, но очень часто это правило не будет соблюдаться; именно поэтому я хочу напомнить, что надо непременно сдерживать свои обещания.</p>
26
<p>Мы все прекрасно понимаем, что такие запросы должны быть оформлены в виде заявок, но очень часто это правило не будет соблюдаться; именно поэтому я хочу напомнить, что надо непременно сдерживать свои обещания.</p>
27
<p>Периодически мы так погружаемся в работу (или же просто страдаем от отсутствия организации), что запросто оставляем некоторые задачи без внимания. Тем не менее от нас всё же ожидают, что они будут выполнены. Получив запрос, не забудьте наклеить соответствующий стикер на видном месте или обновить свой список дел.</p>
27
<p>Периодически мы так погружаемся в работу (или же просто страдаем от отсутствия организации), что запросто оставляем некоторые задачи без внимания. Тем не менее от нас всё же ожидают, что они будут выполнены. Получив запрос, не забудьте наклеить соответствующий стикер на видном месте или обновить свой список дел.</p>
28
<p>После выполнения задачи обязательно проинформируйте об этом всех заинтересованных лиц. Подобный подход продемонстрирует не только вашу ответственность, но и уважительное отношение к коллегам.</p>
28
<p>После выполнения задачи обязательно проинформируйте об этом всех заинтересованных лиц. Подобный подход продемонстрирует не только вашу ответственность, но и уважительное отношение к коллегам.</p>
29
<p>Хоть я и с пониманием отношусь к такому объяснению, этого всё же недостаточно. Ведь речь о том, кто несёт ответственность за ваш код, и такие слова подразумевают, что вы пытаетесь найти виноватого. Наилучшим решением этой проблемы будет внедрение CI, в которой специальный контейнер используется для создания и тестирования приложения. Если же ваша команда не применяет такой подход, нужно:</p>
29
<p>Хоть я и с пониманием отношусь к такому объяснению, этого всё же недостаточно. Ведь речь о том, кто несёт ответственность за ваш код, и такие слова подразумевают, что вы пытаетесь найти виноватого. Наилучшим решением этой проблемы будет внедрение CI, в которой специальный контейнер используется для создания и тестирования приложения. Если же ваша команда не применяет такой подход, нужно:</p>
30
<ul><li>упорно требовать внедрения CI;</li>
30
<ul><li>упорно требовать внедрения CI;</li>
31
<li>удостовериться, что ваше приложение тестируется не только локально, но и после развёртывания в промежуточной среде или среде тестирования.</li>
31
<li>удостовериться, что ваше приложение тестируется не только локально, но и после развёртывания в промежуточной среде или среде тестирования.</li>
32
</ul><p>Как правило, возникают следующие проблемы:</p>
32
</ul><p>Как правило, возникают следующие проблемы:</p>
33
<ul><li>Вы локально установили зависимости или плагины, но забыли добавить их в проект (npm выяснит это).</li>
33
<ul><li>Вы локально установили зависимости или плагины, но забыли добавить их в проект (npm выяснит это).</li>
34
<li>Вы добавили новые данные конфигурации в локальную БД, но забыли добавить их в скрипт развёртывания.</li>
34
<li>Вы добавили новые данные конфигурации в локальную БД, но забыли добавить их в скрипт развёртывания.</li>
35
<li>Ваша локальная версия инструментов и плагинов отличается от их версии в среде.</li>
35
<li>Ваша локальная версия инструментов и плагинов отличается от их версии в среде.</li>
36
<li>Вы не аннулировали кэш (как для фронтенда в браузерах, так и для бэкенда).</li>
36
<li>Вы не аннулировали кэш (как для фронтенда в браузерах, так и для бэкенда).</li>
37
</ul><p>Тем не менее будьте активны, ведь сказать "моя фича не работает в промежуточной среде, но я не знаю почему" гораздо лучше, чем заявить "это работало на моём компьютере".</p>
37
</ul><p>Тем не менее будьте активны, ведь сказать "моя фича не работает в промежуточной среде, но я не знаю почему" гораздо лучше, чем заявить "это работало на моём компьютере".</p>
38
<p>Поначалу у меня было двойственное отношение к этой теме, ведь самообразование кажется вполне естественным занятием, но потом я понял, что многие люди этого не понимают. Если вы оправдываете свой отказ от самообразования нехваткой времени или мотивации, могу сказать лишь одно: вы учитесь не ради компании, в которой работаете, а ради себя.</p>
38
<p>Поначалу у меня было двойственное отношение к этой теме, ведь самообразование кажется вполне естественным занятием, но потом я понял, что многие люди этого не понимают. Если вы оправдываете свой отказ от самообразования нехваткой времени или мотивации, могу сказать лишь одно: вы учитесь не ради компании, в которой работаете, а ради себя.</p>
39
<p>Область знаний вполне может и не иметь отношения к вашим текущим задачам. Вам следует обратить внимание на то, что поможет вырасти с профессиональной точки зрения.</p>
39
<p>Область знаний вполне может и не иметь отношения к вашим текущим задачам. Вам следует обратить внимание на то, что поможет вырасти с профессиональной точки зрения.</p>
40
<p>Само собой, лучше получать новые знания именно в своей профессиональной области. Впрочем, можно с уверенностью утверждать следующее: лучше учиться хоть чему-то (даже если это не относится к вашей сфере деятельности), чем не учиться вообще. У человека можно забрать всё, кроме его знаний.</p>
40
<p>Само собой, лучше получать новые знания именно в своей профессиональной области. Впрочем, можно с уверенностью утверждать следующее: лучше учиться хоть чему-то (даже если это не относится к вашей сфере деятельности), чем не учиться вообще. У человека можно забрать всё, кроме его знаний.</p>
41
<a>Научитесь: Профессия Фронтенд-разработчик + ИИ Узнать больше</a>
41
<a>Научитесь: Профессия Фронтенд-разработчик + ИИ Узнать больше</a>