- У чому полягає робота техніка-програміста
- Що подарувати програмісту
- Чим хакер відрізняється від програміста
- Що потрібно знати для створення сайту
Знання і розуміння термінології
Не існує певних критеріїв, які обов`язкові якого-небудь програмісту. Однак, щоб бути успішним і затребуваним у своїй справі, необхідно мати певні знання та характеристики.
Хороший програміст повинен уявляти, що таке масив, хеш-таблиця, зв`язний список. Фахівець буде знайомий з такими поняттями, як Купа Фібоначчі, що розширюються дерева, списки з пропусками, АВЛ-дерева і т.п. Залежно від спеціалізації він повинен володіти алгоритмами реалізації завдань, знати процедури пошуку, вибірку, проходження структур даних, будувати графи, матриці і бути знайомим хоча б з базовими принципами динамічного програмування.
Найважливіше - володіти відповідними знаннями в галузі інформатики та володіти певним термінологічним апаратом.
Системний програміст повинен розуміти призначення компілятора, розуміти асемблер, мати деякі знання про віртуальної пам`яті і структурі коду операційної системи в цілому-він зобов`язаний володіти інформацією про сокетах, розбиратися в роботі інтернет-мереж і мережевих протоколів.
Рівень володіння мовою програмування (ЯП)
Програміст повинен добре володіти мовою предметної області, на якій він спеціалізується. Знання ЯП увазі, що ви здатні використовувати доступні в ньому інструменти для вирішення певних завдань. Успішний фахівець знає кілька мов програмування і вміє адаптувати використовувані методи під свої завдання або під свою спеціалізацію.
Програміст повинен вивчати поведінку користувача і чекати від нього різних дій і реакцій, що повинно бути реалізовано і в інтерфейсі майбутньої програми.
Знання програміста також обумовлюються його спеціалізацією і профільним ЯП, а також завданнями, які він реалізує через нього.
Наприклад, при написанні коду на Java або C # він повинен знати приємним бібліотеки, типові ситуації програмування. Хорошого фахівця відрізняє здатність уникати повторюваних структур в коді і здатність створювати власні програми відповідно з проблемами, які вирішуються в додатку, що розробляється.
Комунікативні навички
Програміст повинен вміти здійснювати спілкування як з замовниками, так і з колегами. Великі програмні проекти вимагають від програміста здатності здійснювати взаємодію і грамотно викладати свої думки і концепцію проекту.
Знання іноземної мови для програміста дозволяє йому вивчати різну неперекладену технічну документацію, якої у сфері інформатики безліч. Також іноземну мову дозволить спілкуватися із зарубіжними замовниками та більше заробляти.