О разработчике
Привет! Меня зовут Сергей Трушин, и я программист уже больше двадцати лет. По меркам IT это примерно от эпохи Pascal и сайтов для Internet Explorer до времени, когда нейросеть умеет нарисовать кота, написать ему биографию и предложить платную подписку.
Мой основной язык — Java. За долгие годы мы с ней пережили большие корпоративные системы, интеграции, многопоточность, нагруженные серверы и ситуации из серии «вчера всё работало, а сегодня почему-то пятница».
Я fullstack-разработчик, поэтому могу заниматься проектом целиком: продумать архитектуру, написать сервер, создать API, подключить базу данных, собрать интерфейс и выяснить, почему всё прекрасно работает у разработчика, но отказывается запускаться у пользователя.
Языки, серверы и системы безопасности
Я работал с Java, Python, C, Pascal, JavaScript, TypeScript и SQL, а также со множеством других технологий. Обычно новый язык программирования пугает меня примерно первые пятнадцать минут. Потом становится понятно, где у него циклы, функции и любимый способ сообщить разработчику, что тот снова что-то сделал неправильно.
Отдельная часть моей профессиональной деятельности связана с контроллерами, системами безопасности и нагруженными серверными системами. Я создаю решения, которые должны работать стабильно и быстро, даже когда пользователей много, сеть капризничает, оборудование устало, а серверу очень хочется уйти в отпуск.
Базы данных
С базами данных у меня тоже давние отношения. Я работаю с PostgreSQL, Oracle, MySQL, MariaDB, Microsoft SQL Server, SQLite, MongoDB, Redis, ClickHouse и Elasticsearch, а также с другими хранилищами. Занимаюсь проектированием данных, запросами, индексами, транзакциями, репликацией, кешированием и производительностью. Иногда база отвечает быстро. Иногда просит добавить индекс. А иногда молча показывает план запроса на четыреста строк.
Data Science и компьютерное зрение
Кроме классической разработки, у меня есть профессия Data Scientist со специализацией в области компьютерного зрения. Я занимаюсь анализом данных, машинным обучением, обработкой изображений и нейронными сетями. Сначала мы учим компьютер узнавать объект на фотографии, а потом долго объясняем ему, что ковёр — это всё-таки не очень большая пушистая собака.
Как я пришёл в разработку игр
В разработку игр я начал погружаться сравнительно недавно. Профессиональным игровым дизайнером меня пока назвать сложно, поэтому некоторые мои проекты могут выглядеть немного неровно или местами забавно. Я это понимаю, продолжаю учиться и постепенно улучшаю графику, интерфейсы, управление и игровой процесс. Для меня важно развиваться с каждой новой игрой и учитывать отзывы игроков.
Игры стали для меня творческой лабораторией, где соединяются программирование, графика, музыка, физика и немного управляемого хаоса. Я создаю их для удовольствия, ради нового опыта и с надеждой на дополнительный заработок. Особенно приятно, когда увлечение приносит радость людям, новые знания автору и иногда деньги на очередной сервер или чашку кофе.
Через игровые проекты я исследую современные нейросети: генерацию изображений, звука и текстов, интеллектуальных помощников и автоматизацию разработки. Мне интересно своими руками проверять, что новые технологии действительно умеют, где они помогают человеку, а где им всё ещё нужен опытный программист с отладчиком и терпением.
Обучение и сотрудничество
Я могу обучать программированию, архитектуре, Java, Python, базам данных, Data Science и компьютерному зрению. Обучаю понятно и с примерами, но дорого: многолетний опыт занимает мало места на диске, зато долго устанавливается в голову.
Предложите свою идею
Есть идея новой игры, персонажа, мира или задания? Хотите предложить улучшение или обсудить разработку? Отправьте обращение через форму связи с разработчиком.