Ruby on Rails Developer

Aleksandr Kuznetsov

Avatar

Bio

All my entire career I have a deal with diffirent business processes: developing & manufacturing products, B2B sales & marketing, relationships between government and private sector, startup launching, etc. And I have noticed that Web products are becoming not just a necessary element of any business process, but are gradually becoming leading roles. Investment in Web products leads to added value growth, reducing of total costs and speeding up of activities. As a result I have decided to dive deep into the Web Developing, especially Ruby on Rails (RoR) ecosytem, and started to be as professional developer. So now I'm trying to do my best to growth as Web Developer and help companies to reach business goals.

Skills

Developer skills

  • Ruby, project example
    Ruby is excellent way to interpret your thoughts and ideas to any machine through Object-oriented programming tools and with the assistance of unique Ruby community (who also creates awesome gems, patterns, education resources, etc.)
  • Ruby on Rails, project example
    I think about RoR like a General Contractor. First of all I set a task, decide what models should I have. Second step is define key scenarios of an app. Next I draw views projects that help me understand what gems, frameworks would be better for front-end (Webpack + Bootstrap + Puma looks great for new apps, but sometimes the best way to choose Asset Pipeline way if I won't use a lot of CSS, JS, JS libraries) and it would be connected through controllers and routes. After all it is time to code, test, edit multiple times and coordinate with colleagues, deploy to server.
  • WebSocket, project example
    There is opportunity to use Aplication Cable framework, directly in RoR, that based on WebSocket technology. Kabulchat app is a bright example of simple chat system where users get messages without refreshing HTML page or element: back-end controllers ('channels' - convetntionally for RoR) + Front-end (JS/JQuery/Coffeescript files in Asset Pipeline) + DB (Redis for production for the best user experience).
  • Web scraping, project example
    Nokogiri and OpenURI gems help to retreive data from the Web according to individual settings and then Ruby builtin methods allows to transform this data to any preferable format (output text to termianl console, .xlsx tables, etc.).
  • Tests (RSpec), project example
    Currently I use RSpec tests (with FactoryBot and Capybara gems) for checking RoR models, controller actions, policies, etc. For me tests are 'internal auditors', so 'due diligence' of an app is good technical and business practice, so I am on my way to learn RSpec and other tests more deeply.
  • HTML + CSS + JQuery, project example
    Front-end is very important part of any web app because customers interact with app through web pages.
  • Vanilla JS
    JavaScript = 'brain' of Front-end. I'm just at the beginning of the learning JS and I plan to improve my JS skills.
  • Bootstrap + Webpack
    Webpack + Bootstrap = one of the best way to organize Front-end. Webpack has excellent performance optimizations, it really helps for working with JS and JS frameworks, and Bootstrap is intuitively understandable HTML-CSS-JS libtrary, so it is a pleasure to work with Front-end.
  • PostgreSQL, SQLite, Redis
    Almost all web apps interact with object-relational database systems for saving and retreiving data. For production mode I use PostgreSQL because of client server architecture and for development simple SQLite that is embedded into the end program.
  • App deploying to vps ( Heroku, Digital Ocean + Nginx)
    One of the purpose of web apps is remote access for its functionality, so deploying apps to IaaS (Digital Ocean) and PaaS (Heroku) solutions is essential and ehjoyable part of technical sophistication.
  • AWS, Google Cloud Platfrom
    Diversification of media needs in cloud solutions that make app developing more flexible.
  • Kafka
    One of the necessary tools to develop APIs.
  • Kubernetes
    Effective way to manage projects in remote servers.
  • Docker
    Docker has Linux kernel's functionality and uses resource isolation, so it helps for app developing in teams.
  • Git & GitHub
    Git and GitHub are essential part of developing process — you make key notes (commits) after updating or fixing of app code and that is why your way of thinking becomes clear for other developers and for you in future.
  • Logz.io, New Relic, Helios
    It really helps to investigate and fix errors.
  • Linux / Windows
    There are much more commons (for developing purposes) between Linux and Windows since WSL2 was presented.

Other skills

Financial modeling, Product management & marketing, Procurements, Business Development

Language skills

  • Russian (Native)
  • English (Upper-Intermediate)
  • Spanish (Elementary)

Experience

September 2023 — Today

Ruby on Rails Developer at IT_ONE company

  • Creation and optimization of RESTful APIs in Ruby on Rails, enhancing system efficiency and user experience.
  • Maintenance and refactoring of existing Ruby on Rails codebase, improving code efficiency and reliability.
  • Optimizing database interactions, resolving complex bugs related to scopes and queries in Rails applications.
  • Developing innovative solutions for data retrieval across associated Rails applications, leveraging ActiveResource for optimal integration.
  • Implementation of advanced data logic to interact seamlessly with external Rails applications, ensuring data consistency and accessibility.
  • Test coverage with RSpec, identifying and addressing potential issues early in the development cycle.

October 2021 — August 2023

Ruby on Rails Developer at Selina

    • API Development and Integration:
      • Collaborated with a large, cross-functional team to design and develop API functionalities within core Ruby on Rails applications, facilitating the seamless integration of diverse services such as payments, room bookings, and event management systems.
      • Developed and maintained robust API endpoints to support internal and external services, ensuring consistent performance and reliability across various platforms.
      • Led the integration of external services into existing systems using RESTful APIs and event-driven architecture, with a focus on HTTP requests and Kafka message brokers for asynchronous communication.
      • Played a key role in optimizing API performance and security, implementing best practices for data handling, authentication, and authorization across services.
    • Maintenance and Codebase Improvement:
      • Engaged in the ongoing maintenance and refactoring of a substantial legacy codebase, focusing on enhancing code quality, maintainability, and adherence to SOLID principles.
      • Refactored existing models and controllers by extracting complex business logic into service object classes, leading to a more modular, testable, and scalable architecture.
      • Implemented extensive RSpec test coverage, significantly improving the reliability and stability of the codebase while reducing the occurrence of bugs in production.
      • Contributed to the evolution of the application by designing and implementing new models, controllers, and services to support the introduction of new features and business logic.

August 2020 — September 2021

Web Development

Ruby on Rails:

App for setting up meetings. You can join to already existing events or create your own.

App for ask questions. Create your account and wait for questions or ask someone else.

App with Aplication Cable technology for chat with other users. You can join to already existing chatroom or create your own.

Ruby:

App for outdoor wear advising according to your location weather (temperature)

Hangman console game with russian words

App that simulate typical purchase process at any local store

RSpec:

Test for login through Facebook account

Test for using pincodes for events accessing

Test for correct files handling

HTML, CSS, JS:

Landing page about business development services

Form for searching any video from Youtube and Vimeo

Web scraping:

Console app for choosing one of the 250 IMDB most rated movies

April 2017 — September 2021

Business Development

  • Product management & marketing (incl. Digital Marketing): help to organize first russian PCB for oil drill electronic devices, $1.3 mln. sales of test & measurements equipments
  • Finance (modeling, researches, forecasting, etc.): rise $260 000 of grants

May 2016 — March 2017

Cluster development manager

  • Organize cooperation between business and government, business consulting: create first manufacturing cluster of my region
  • Organize financial management and document management

July 2015 — April 2016

Internal audit specialist

  • Organize internal control and audit of procurements, grants and other forms of financial aids for business: arrange $15 000 refund to region budget, create new internal audit methodology
  • Financial forecasting, reporting

March 2015 — July 2015

Tax specialist

VAT audit: detection of violation, organize interrogations, reporting and etc.

Education

2009 — 2014

South Ural State University

Specialist/Master's Degree — Financial management

2021

Good Prorgammer

Ruby on Rails Developer