Умейте мыслить гениально. Как принять решение | страница 14
Особенности мышления программистов:
• Постановка цели, четкий проект.
• Сделать проект максимально просто, не усложняя.
• Сделать свой продукт ценным для клиентов.
• Знание современных языков программирования пришло на смену знаний математики.
• Гибко подстраиваться под запросы клиента.
• Умение работать в команде разработчиков.
• Быть конкурентоспособным на рынке
– Почему ваши дети все время ссорятся?
– Kонфликт версий, – отвечает программист.
Составляющие мышления программистов.
• Высшее техническое образование. Креативное мышление. Профессионализм.
• Исключительное знание языков программирования. Умение свободно в них ориентироваться, находить оригинальные решения. Возможность работать сразу над несколькими задачами.
• Постоянный поиск нового. Все новые программные продукты увлеченные программисты осваивают до тонкостей. «Выжимают» максимум возможностей из новой техники. Коллекционируют всевозможные программные ухищрения и неожиданные решения.
• Фанатичная преданность своему призванию. Способность не спать и не есть ради скорейшего решения задачи. Самая большая радость программиста: удачно написанная программа, даже если автор – не он…
В искусстве программирования совершенство достигается тогда, когда программа, выполняющая свою функцию, занимает всего несколько строк. Когда одна программа делает то, что не может делать другая. Когда программа может манипулировать с файлами такими способами, которые ранее считались невозможными.
Совершенные программы, отдельные приемы программирования, удачные алгоритмы могут быть предметами коллекционирования и почитания.
Ильназ Гильязов, эксперт курса «Профессия веб-разработчик» университета digital-профессий Нетология уверен, что программисту необходимы следующие компетенции:
• Умение сформулировать/понять задачу.
• Умение упрощать.
• Умение декомпозировать, выделять главное, и выстраивать логическую цепочку.
• Умение выделять граничные значения и исключительные ситуации.
Михаил Субботин, преподаватель израильской высшей школы IT и безопасности HackerU считает, что главная задача программиста – понимать, как работает мир, разбивать сложные явления на простые инструкции, а потом собирать их воедино. Программист должен уметь правильно задавать вопросы и находить на них ответы
Сергей Шитиков, технический директор Суточно. ру подчеркивает, что самое важное качество разработчика, как и любого инженера – умение проектировать и прогнозировать возможные сценарии работы, отличные от стандартного. Что произойдет, если ответ от сервера не придет? А если придет, то вдруг он будет некорректный? Или будет идти слишком долго?