С 2022 года работаю С++ разработчиком в ФГУП НАМИ.
В 2018 году решил поменять профессию, так как очень заинтересовали программирование и информационные технологии. Мне нравится изучать различные современные алгоритмы и структуры данных, в том числе параллельные, как устроены современные процессоры и видеокарты.
На данный момент я закончил Российский технологический университет МИРЭА на направлении "Прикладная математика и информатика". В университете изучал математику (линейная алгебра, математический анализ, дискретная математика, комбинаторика), алгоритмы, структуры данных, языки программирования (C++, Python), многопоточное программирование, программирование на видеокартах, SQL, операционные системы, компьютерную графику и устройство ЭВМ, в том числе устройство современных CPU и GPU.
На последних курсах университета написал дипломную работу по теме "Исследование рассеивающих хэш-функций" с использованием языков С++ и Python, а также библиотек Boost (Format, JSON, Multiprecision), NumPy и Matplotlib. В рамках своей работы я сравнил многие современные некриптографические хэш-функции. Например, MurmurHash, CityHash, FarmHash и xxHash.
Cсылка на репозиторий: https://github.com/amrul94/HashCmp
Дополнительно прошел обучение в Яндекс.Практикуме на направлении «Разработчик С++».
Свободное от работы и учебы время уделяю изучению C++ и Python.
Изучаю литературу по С++ и Python, алгоритмам и структурам данных, решаю примеры и задачи из книг (Бьерн Страуструп "Язык программирования С++", Скотт Майерс - цикл книг "Эффективное использование C++", Стивен Прата "Язык программирования С++. Лекции и упражнения", Николай М. Джосаттис "Стандартная библиотека C++. Справочное руководство", Марк Лутц "Изучаем Python", Штайн Клиффорд, Кормен Томас Х. "Алгоритмы. Построение и анализ", Антон Полухин "Разработка приложений на C++ с использованием Boost"). Изучаю библиотеку Boost. С интересом смотрю записи конференций, таких как C++ Russia и C++ Siberia и слушаю подкасты про С++ - Pure Virtual Cast.
Люблю поиграть в компьютерные игры, смотреть сериалы и кино, а также настольные игры.
Работаю в отделе планирования движения (планировщика) в системе управления беспилотного транспортного средства (БТС).
Осуществлял следующую деятельность:
- участие в разработке и тестировании модуля планирования БТС.
- участие в разработке систем помощи водителю.
- разработка симулятора для тестирования БТС.
- разработке и поддержке внутренних библиотек
Технологии, с которыми я работал: Git, Clion, RAII, макросы, санитайзеры, асинхронные вычисления, семантика перемещения, IILE (немедленно вызываемая лямбда-функция), Forward reference, C++17, идиоматический C++, JSON, SVG, Protobuf 3
Проекты, которые я выполнил:
SearchServer - программа по поиску документов с учетом минус-слов (документы с этими словами не будут отображаться в результатах поисков), Работает на подобии поисковых систем, таких как Яндекс. Ранжирование происходит по TF-IDF
Cсылка на репозиторий: https://github.com/amrul94/SearchServer
TransportCatalogue - транспортный справочник, Работает с JSON-запросами. Выдает ответ на запрос отрисовки маршрутов строкой SVG формата. Реализован конструктор JSON с использованием цепочки вызовов методов, явные ошибки находятся на этапе компиляции.
Ссылка на репозиторий: https://github.com/amrul94/TransportCatalogue
Интерпретатора языка Mython - реализовал на C++ интерпретатор языка программирования Mython (упрощённое подмножество Python). Для этого написал лексический анализатор (лексер), синтаксический анализатор (парсер), семантический анализатор и таблицу символов.
Ссылка на репозиторий: https://github.com/amrul94/InterpreterForMython
SpreadSheet - электронная таблица (упрощённый аналог Microsoft Excel или Google Sheets) В ячейках таблицы могут быть текст или формулы. Формулы, как и в существующих решениях, могут содержать индексы ячеек.
Ссылка на репозиторий: https://github.com/amrul94/SpreadSheet
Ассистирую врачу-реаниматологу в осуществлении медицинский манипуляций, проведении реанимационных мероприятий в случае ухудшения тяжести пациента. Выполняю назначения врача. Веду различную медицинскую документацию в ЕМИАС. Помогаю коллегам в ведении электронной документации и при работе с компьютером.