Вопрос, интересующий новичков в программировании, где им предстоит работать и с чем предстоит столкнуться. Схематично разберем варианты работы.
Прежде всего, разделим по принципу группировки.
Кем работать?
Где работать?
Как работать?
Рассмотрим сначала варианты "кем работать".
Разработка.
Тестирование.
Наставничество.
Грубо можно разделить на области разработки (ПО, веб.и т.п.) и тестирования.
Собственно, какой-либо продукт можно разрабатывать, а можно (и нужно!) тестировать.
Само собой, свои творения необходимо первично самостоятельно протестировать. Но на глубокую тестировку "незамыленным" взглядом надо отправлять другим людям - нацеленным уже на детальное изучение продукта и тестирование.
Опытные программисты (что разработчики, что тестировщики) могут становиться наставниками в различных вариациях. Обучать на различных курсах, быть тимлидами (тогда в их обязанности будет входить и наставничество, и разработка-тестирование - на самых важных и трудных этапах - построение архитектуры, раздача задач, сборка приложения и др.), проводить индивидуальное обучение, консультировать по проектам.
Переходим к пункту "где работать". Т.е. в какой области.
Скажу сразу: в любой!
Разработка декстопных приложений (в прошлое вовсе не кануло), разработка веб-приложений, разработка сайтов, разработка серверных частей приложения, работа с базами данных, разработка андроид и iOS-приложений, разработка плагинов и проч. (И аналогично тестирование).
Даже в рамках одного языка, например, java, можно выбрать совершенно разные направления работы - хоть бэкенд, хоть веб-приложения, хоть для ПК, хоть под андроид... Конечно, не все языки так многогранны, но, тем не менее.
Конечно, каждое направление имеет свою специфику. Чем больше захочется заниматься, станет ясно уже в процессе:)
Ну и, наконец, "как работать".
Почти для любого языка/направления справедливы несколько вариантов.
Работа в офисе.
Фриланс.
Собственные коммерческие проекты.
С фрилансом чаще связывают разработку сайтов или, например, андроид-приложений.
Однако, скажу точно, под ту же "чистую" java (не javafx, например, или android), которая часто считается чисто "офисным" языком, тоже есть заказы на фриланс-биржах.
Поэтому, мое мнение, надо заниматься тем языком, направлением, что понравилось больше. А формат работы можно будет "подогнать" под себя.
Если есть какие-то вопросы по обучению, по построению работы, по выбору своего направления (тут могу подсказать и как психолог), пишите, с удовольствием подскажу.
Подписывайтесь, будет еще много интересного по процессу программирования, по вариантам работы, про биржи фриланса... При наличии обратной связи мне будет проще сориентироваться, про что интересно читать, и про что надо писать в первую очередь.
С наилучшими пожеланиями!