Выходя за рамки кодирования: основные навыки для современных разработчиков программного обеспечения

Выходя за рамки кодирования: основные навыки для современных разработчиков программного обеспечения

3 января 2024 г.

Разработка программного обеспечения становится намного более конкурентоспособной. С появлением инструментов искусственного интеллекта научиться программировать стало проще, чем когда-либо.

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

Вот несколько основных принципов, которых не хватает большинству разработчиков программного обеспечения.

Общение

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

Дизайн, структура и усиление; Стандарты

Не просто собирать вещи и создавать «спагетти-код» — помните о лучших практиках проектирования программного обеспечения, таких как объектно-ориентированное проектирование и контроллер представления модели.

При работе над любым проектом структура и стандарты являются ключом к долгосрочному успеху. Например, если вы используете такую ​​структуру, как React или Angular, у вас должны быть определенные каталоги для ваших стилей, страниц и компонентов.

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

Соблюдение сроков

Я не уверен, потому ли это, что все недооценивают, сколько времени займет выполнение задачи, или потому, что они не учитывают тестирование и отладку.

За свой десятилетний опыт работы разработчиком программного обеспечения я нашел это обычная практика – пропускать сроки. От независимых внештатных проектов до корпоративных команд SCRUM — как фрилансеры, так и команды обычно не достигают целей своих проектов по выпуску программного обеспечения.

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

Не откладывайте на потом — будьте активны

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

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

Соблюдайте рамки — не обещайте больше, не выполняйте

Как и в случае срыва сроков, часто, особенно среди новых разработчиков, мы слишком много обещаем и не достигаем поставленной цели.

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

При этом важно отказаться от некоторых вещей, которые выходят за рамки согласованного проекта. Хорошая идея — выделить несколько часов на доработку, если клиент по-прежнему не удовлетворен, вы запрашиваете корректировку контракта. Также важно сохранять гибкость, и клиент будет уважать соблюдение контракта. Именно здесь на помощь приходит раннее, эффективное и частое общение.

Не сдавайтесь — завершите проект

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

Оптимизация и усиление; Эффективность

Всегда есть способы сделать что-то лучше. Ищите способы улучшить или оптимизировать код; озвучивайте их как можно раньше и чаще, чтобы ваш клиент и команда знали о потенциальной оптимизации.

В этом секретный соус: если вы можете найти способ оптимизировать программное обеспечение и показать данные, подтверждающие эффективность, вы — КОЗА. Целью программного обеспечения является оптимизация эффективности сложных задач; если вы можете найти способ оптимизировать или сделать что-то более эффективным, вы наткнулись на Святой Грааль программирования.

Будьте добры, не будьте дерзкими

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

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

Я также сталкивался с ситуациями, когда знаю о React больше, чем члены моей команды. Были ситуации, когда член команды не знал, что не так с его репозиторием, когда ему просто нужно было установить зависимости из package.json — в подобных ситуациях важно не показаться высокомерным и уважать, что члены команды имеют разное происхождение. опыта.

Вы всегда можете учиться у других. Несмотря на то, что я знал больше о React, член моей команды познакомил меня с термином «Перегрузка функций< /a>», что вы, вероятно, делали, но могли не знать терминологии.

Лучше всего подавать пример с уважением и добротой. Программирование – это сообщество и обмен знаниями! Речь идет не о том, чтобы пристыдить того, кто учится.

Документация

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

Иногда вы можете столкнуться с таким проектом:

И помните, что любая документация лучше, чем ее отсутствие.

Помимо юмора и amp; хотя большая часть этой статьи может показаться очевидной —

Большинство разработчиков программного обеспечения, включая меня, не обладают многими из этих навыков. Как бы вы оценили себя по этим навыкам (1–10)?

Общение:

Дизайн, структура, стандарты:

Сроки соблюдения сроков:

Не откладывать на потом:

Остаться в рамках:

Завершение проекта:

Оптимизация & сделать код максимально эффективным:

Быть добрым:

Документация:

Возьмите самые низкие баллы и сосредоточьтесь на улучшении этих областей в этом году!

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

Спасибо за чтение и удачного программирования!

Мир,

Уэс


Также опубликовано здесь.


Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE