"Ничто не остановит мотивированную морскую свинку"
(с) Чип & Дейл

Начав с поиска в интернете, удивился, что программистом в возрасте хотят стать с периодичностью в 5 лет, может это как-то связано с циклом разработки, но оставим тему для дальнейшего исследования!
Здравствуйте, меня зовут Олег и я программист! Пусть будет таким начало исповеди в клубе возрастных программистов.
Для экономии времени читателя: да, можно, но есть много "если" и об этом дальнейший текст.
Сейчас мне за 50, но еще 2 года назад о современном программировании я только знал то, что в компании есть отдел разработки и я им плачу деньги. Конечно не честно говорить, что с компьютерами я не знаком. В IT работаю с далекого 97 года, именно тогда я еще что-то писал на Delphi. Но с тех пор прошел путь от инженера, до руководителя представительства крупной софтверной компании, целиком окунувшись в проблемы "бузинеса".
Два года назад меня пригласили в стартап, исполнительным. Стартапы - еще одна тема, которую стоит сейчас обойти, но причина, почему упоминаю именно эту структуру компании: стиль работы и качество процессов. На начальном моменте разработкой занималась аутсорсинг компания, которая, как оказалось, делала прототип (макет) больше, чем программный продукт.
В чем разница? Простые вопросы дадут ответ: есть ли документация? как построена отказоустойчивость (тут про девятки лучш�� не спрашивать, чтоб не унизить коллег), есть ли инструкция пользования системой, отчуждаем ли продукт. Да, это вопросы от "бизнеса", но они как раз и помогают оценить зрелость.
Красивые картинки хороши для уговоров инвесторов вложиться в проект, но для управления компанией, её развитием и в конечном итоге (а по существу это первое) - для окупаемости, нужно много инструментов аналитического, управленческого характера.
В рамках ограниченных ресурсов, универсальность команды даёт большие плюсы. Тут и настал тот момент, когда пришлось вспомнить программирование. Изначально задача стояла: понять динамику использования системы в различных её срезах. Посмотрев по сторонам, наткнулся на тренинги по Data Science(начинаю пугать словами) на базе Jupyter Notebook. Что? Python? Когда увидел это слово - поперхнулся.
Небольшой отступ: "Пап, помоги с домашкой по информатике, нам надо написать программу на Питоне". Обычные будни родителей. Но как же я возненавидел это язык. После классики Assembler, Fortran, Basic, C/C++, Pascal, Delphi, синтаксис "Пайтона" меня просто шокировал. Regex вообще ввёл в ступор. Домашка сведена к одной строке. Мне очень нравится высказывание про Питон:
В Python не надо изобретать велосипед. Всё, что вы могли бы придумать или создать - уже сделано. Единственная проблема на парковке в несколько гектар (кто был в Нидерландах поймет) найти свой велосипед.
И вот я начинаю знакомиться с языком. Библиотека Pandas реально помогла провести быструю аналитику. Сам механизм работы с Juniper очень зашёл: загрузив в DataFrame данные, ты начинаешь ими манипулировать, без надобности заново запускать весь код. Дебаг режимы компиляторов - это не то!
Через какое-то время я узнал, что в Python можно и серверные приложения писать! Тут был очередной шок. Но и первый кирпичик в признании языка. Дальше - больше. Погрузился в Yandex.DataLense, за ним потянуло PostgreSQL. И вот через год игры в "программиста", я уже накидал и Discord/Telegram/Slack ботов, сервисы выгрузки бизнес данных, интегрировал бэкоффис с YooMoney, Cloudpayments, накидал на Flask еще и фронт к этому всем. Ну и как без GitLab, Hub и д.р. подобных систем? Пришлось и с ними пообщаться.
Стиль программирования, конечно изменился. Не буду "брюзжать" как старик (хотя таким и являюсь), но всякие ваши Agile - это полная лажа!!! Системы работы и контроля Jira, Yougile. Так стоп! Стоит сделать акцент на этом громадном количестве непонятных букв. Относитесь к ним просто как к задаче: сколько можно составить слов длиной 5 букв из английского алфавита. Систем очень и очень много! Одни лучше в одном, другие в другом. Главное что у вас в голове! Разобраться можно со всеми системами. Когда я смотрю на молодых программистов, которых нанимаю на работу, они начинают хвастаться своим (раз в 10 большим) списком, для меня это звучит как если бы плотник будет говорил: "а еще я умею лобзиком, ножовкой, двуручной, обушковой, лучковой, копировальной, поперечной, джеб и .."
И вот, после долгого вступления, перехожу к сути: я решил попробовать себя в роли программиста. Нюанс ситуации в том, что если кинуть моё резюме, то HR специалисты тихо сойдут с ума: кем? программистом? Не буду лукавить, я и не пошёл по этому пути. А по знакомству, увидев запрос на позицию Python Backend Developer спросил: "возьмете такого как я?"
Для себя хотел больше понять свой уровень в современном мире программирования, который я насобирал за год. И финансовый вопрос интересовал. Когда ты нанимаешь юнца, который без зазрения совести говорит хочу зарплату в 2 раза большую чем позиция ген.дира - это смущает. И главное, он же реально её получает! Рынок зарплат программистов - очередная тема и боль за рамками этой истории. С моими регалиями и опытом, если двигаться дальше по управленческой лестнице (хотя куда? только разве размер компании или гос), о таких уровнях зарплат, как есть в программировании сейчас, речи не будет. Поэтому я готов был попробовать себя как Junior, но меня определили в Senior.
А тема оказалась (барабанная дробь) крипта! Я конечно знал что это такое и даже есть кое-какие активы в ней, но чтоб кодить.
И вот прошел год, что дает мне право сейчас говорить о возможностях человека в возрасте поменять практически всё и стать программистом. За плечами серьёзная бэк разработка в команде из 30 кодеров, море строк в проекте api, адаптеры к сторонним системам Maltego, Clarity, до кучи пришлось копнуть и Solidity (изучить тему smart contracts, cross-chain bridges) и даже на GO писать.
Наверное, вы сами можете теперь ответить: можно ли стать программистом в 50 лет. Я лишь добавлю, если вы были им ранее - да. Странно смотреть на людей, которые в 40 и даже в 30 идут на "курсы по программированию" и потом без зазрения совести говорят "я знаю кунг-фу". Не тратьте свои деньги - бесплатных тренингов начального уровня в интернете полным полно! Если вы сможете хотя бы месяц каждый день ими заниматься, тогда есть шанс. И да, курсы - очередная тема, которую не стоит сейчас затрагивать. Знание букв не означает, что вы можете написать рассказ. Вот так же в программировании: если на курсах освоил print("Hello World"), то не факт, что асинхронный модуль работы с потоковыми данными будет тебе по силе. Но если есть желание - всё возможно!
А если меня спросить - программист ли я. Немного задумавшись, точно могу сказать, что знаю и вижу людей, которые гораздо больше понимают, умеют и знают в этой теме и мне всегда есть чему учиться. И когда я стою рядом с ними, реальными Программистами, то мне всего лишь остается сказать: я что-то знаю об этом.
