Frontend или фронтэнд разработчик — это программист, занимающийся разработкой пользовательского интерфейса, то есть внешней публичной части сайта в браузере. Главная задача фронтэнд разработчика — перевести дизайн-макет в легко читаемый и расширяемый код, сделать так, чтобы всё на сайте или в веб-приложении работало быстро и удобно для пользователя.
Программист по backend или бэкенд-направлению занимается внутренним обустройством продукта, организует работу приложения, сайтов, хранение данных, передачу информации пользователю и удобную навигацию. Если разделить веб-продукт на две части, то внешний вид — это работа фронтенд, а внутренний функционал и хранение данных — деятельность бэкенд.
Full-stack Developer или фулл-стэк — это разработчик, который принимает непосредственное участие во всех этапах разработки веб-приложений — от создания клиентской части (визуальная часть + пользовательская логика) до реализации серверной (базы данных, серверная архитектура, программная логика).