Ildar Safin. Software developer
Ruby on Rails developer. Passionate about technology, solving problems, good design and art
💼 Experience
Phrase - Berlin, Germany
Senior Software Engineer (Ruby on Rails)
🗓 Sep 2023 - Present
Working on Core functionality of the Strings Product
FinLink - Berlin, Germany
Software Engineer (Ruby on Rails)
🗓 Nov 2020 - 31 Aug 2023
Software Development on Advisor CRM platform. Implementing features on different part of the system that are necessary to advisors (accounting, reporting, lead sources, tasks management, document generation)
Developing and consuming internal/external API/enterprise level APIs. Worked with legacy code as well as implementing new complex features.
Refactorings on different part of app architecture (model callbacks → command pattern, Search logic → Filtererers).
Worked with non-trivial authentication/authorization new requirements like dynamic permissions for User. Interviewed,Onboarded new devs.
Conducted Backend Guild meetings for knowledge sharing topics between backend devs in the company.
Makerist - Berlin, Germany
Software Engineer (Ruby on Rails, AWS)
🗓 July 2018 - Oct 2020
Day-to-day work on features using Ruby on Rails, JS, SCRUM. Most interesting experience:
- Implementing features in different parts of application. Used trailblazer framework for business logic implementation. Worked on different parts of app: accounting/payments,
- Moved infrastructure to AWS: EC2 with Autoscaling and LoadBalancing, RDS with Postgres DB, CI/CD using CodePipeline/CodeBuild/CodeDeploy, S3, CloudFormation for IaaC, and many more. Made AWS Solutions Architect Associate certification after this experience.
- Did major rails upgrades (Rails4.2->Rails5->Rails6)
- Introduced webpacker in the projects
Freelance Project (Syzlek) - Kazan, Russia
Web Developer (Python/Django)
🗓 Jul 2017 - Sep 2017
- Built language online dictionary using Python/Django framework
LeveL90 - Innopolis, Russia
Web Developer
🗓 Jul 2015 - Apr 2017
- Wrote online courses web-application (course administration, passing the courses, calculation of progress for each user). Also, built several MVPs which are no longer supported. All of applications have been written using Ruby on Rails framework
- Implemented XSolla API for recurrent billing system for paid courses subscription
- Implemented ActiveAdmin for site administration
- Implemented automated user submitted task approving job with Sidekiq library
- Implemented Pundit library for authorization policies
- Implemented Carrierwave + Fog libraries for files uploading
- Deployed system on Amazon AWS infrastructure (EC2 + RDS + S3). Then moved to the dedicated server
- Implemented Capistrano for site deployment
- Used Git (Gitlab) for version control
- Used RSpec library for unit tests and integration tests
- Used semaphoreCI + Rubocop + RSpec tests for Continuous Integration
- Wrote js code to implement some dynamic features to the application
- Used slim as markup language
Freelance Project (Advoclick) - Kazan, Russia
Web Developer (NodeJS)
🗓 Dec 2015 - Jun 2015
- Rewrote codebase and implemented new features on the web-messaging platform (used to contact users with lawyers), which was built on NodeJS/Express framework.
- Refactored the web-messaging system which based on web sockets
- Wrote JSON API backend for IOS and Android applications
- Worked with legacy code. Added new features such a messaging with multiple lawyers
- Worked with backbone framework to implement frontend features
- Used MongoDB database as database
- Used Microsoft Azure Infrastructure (1 node app server + 3 MongoDB servers (main + 2 back-ups) + azure blob storage for files storing)
- Used Mocha + Chai for unit testing
Flatstack - Kazan, Russia
Ruby on Rails Developer
🗓 Apr 2013 - Jan 2015
- Wrote JSON API endpoints for database management web-service
- Wrote some JSON API endpoints for mobile task management app
- Wrote some controller methods, views and JS-code for team mood management service
- Wrote simple gem to use codeclimate results in CI
- Wrote feature tests using Capybara
- Wrote unit and integration tests using RSpec
- Implemented Pingdom+PagerDuty for site availability monitoring
- Used SemaphoreCI, TravisCI for continuous integration
- Used Git (Github, Bitbucket) for version control
- Used Rollbar, Rubocop, Rails best practices plugins for code quality
🏫 Education
- Technische Universität Ilmenau, Ilmenau (Germany)
Master of Science in Research in Computer and Systems Engineering (Double degree)
OCT 2017 - NOV 2018
- Kazan National Research Technical University named after A.N. Tupolev, Kazan (Russia)
Master of Science in Research in Computers and Systems Engineering (Double Degree)
SEP 2016 - NOV 2018
- Kazan National Research Technical University named after A.N. Tupolev, Kazan (Russia)
Bachelor of Science in Computer Science and Engineering
SEP 2012 - JUN 2016
🛠 Frameworks
- Rails
- Sinatra
- Django/Flask
- NodeJS/ExpressJS/NestJS
🔧 Tools
- Github Actions
- Heroku, Azure, AWS
- unit + integration tests
- JIRA
- RubyMine + Copilot
☁️ Cloud
- AWS Solutions Architect - Certified
Contact me
email: knock@ildarsafin.tech