Программист - это тот кто умеет создавать программы.
Программы бывают системные и прикладные.
Если ты можешь создать работающую программу - ты программист.
Другое дело - работа в профессиональной индустрии.
Там надо не просто уметь программировать, а надо уметь стандартно программировать, то есть знать профессиональные инструменты и фреймворки.
Для себя ты можешь писать код как тебе угодно. Например ты можешь делать свой сайт или свое моб-приложение... Неважно как написан твой код - главное что он работает хорошо.
А в индустрии ты должен работать стандартно - это сложнее чем быть программистом-любителем. Это необходимо чтобы работодатель не зависел от тебя, и чтобы он мог легко уволить тебя и заменить на другого стандартного раз-раба)) Конкуренция очень высокая. Стресс, выгорание и депрессия.
А в инди-разработке ты сам себе хозяин.