Зломщик
Найчастіше поняття «хакер» асоціюється з фахівцем, який займається зломом програмного забезпечення, пошуком вразливостей в програмах, операційних системах і комп`ютерах. В даному випадку хакер обов`язково повинен бути програмістом досить високої кваліфікації, який повинен добре володіти як мінімум 1 мовою програмування і знати структуру і побудова комп`ютерних додатків.
Хакери добре знайомі з теорією комп`ютерної безпеки і мереж, знають технології передачі даних і поширені помилки програмістів, щоб здійснити злом програмного продукту або цілого комп`ютера (сервера).
Діяльність хакерів не завжди спрямована на знищення будь-якої інформації або заволодіння доступом до того чи іншого інтернет-ресурсу. Існують фахівці, що мають великий досвід програмування і написання додатків. Такі хакери працюють у великих компаніях в якості дослідників вразливостей IT-систем, яка побудована на підприємстві і може зберігати великі масиви даних. Робота фахівців полягає в удосконаленні систем безпеки з метою збереження працездатності ПО і забезпечення максимальної ступеня збереження даних.
На відміну від хакерів, програмісти займаються проектуванням, написанням і налагодженням комп`ютерних програм. Фахівці пишуть комп`ютерний код, який використовується для вирішення різних завдань, починаючи з комп`ютерів звичайних користувачів і закінчуючи операційними системами або програмами управління базами даних.
Інші значення
Також слово «хакер» часто вживається людьми для позначення висококваліфікованого людини, яка відмінно знайомий з базовими принципами функціонування комп`ютерних систем та встановлення програмного забезпечення. У такому випадку хакерами можна назвати більшість професійних програмістів, оскільки справжній програміст відповідає даним критеріям.
Термін «хакер» іноді використовується по відношенню до людей, які за своїм родом діяльності не пов`язані зі сферою IT, однак є справжніми фахівцями у своїй діяльності.
Слово «хакер» раніше використовувалося по відношенню до людей, які виправляли помилки в роботі програм. Необхідні виправлення вносилися в екстреному порядку, щоб швидко вирішити якусь проблему в безпеці або виправити помилки, що виникають у процесі використання програми.