Now you can Instantly Chat with Sergey!
About Me
Experienced Ruby On Rails developer with expertise in modifying existing code, designing and implementing complex back-end solutions. Skilled in MVC approach, full-text search, notification solutions, and denormalization solutions. Prioritizes writin...
Show MoreSkills
Portfolio Projects
Description
I was developing the server side for the applications. I was designing, estimating and implementing new features and resolving issues.
I've developed a few really interesting features e.g. "Late arrivals feature" and "Unread notifications counter". Besides, I've developed a lot of standard features e.g. "Notebook feature", "An employee's profile custom fields" and others.
I've accomplished a huge refactoring which was necessary to implement the "Unread notifications counter" feature and make the application's notification system scalable.
I've provided JSON HTTP API, WebSocket events and push notifications for the features. It allows the desktop and the mobile applications to make requests, get responses, refresh the information on pages and notify the users when something happened.
We made use of modern ruby gems, such as dry-transaction, dry-validation, and others, as tools to help us keep the code clean.
It's really important to mention that we've solved a very common issue with HTTP API documentation - it requires additional efforts to write documentation and it's very hard to keep it updated. The solution was the gem called rspec_api_documentation. It allows generating HTTP API documentation using rspec test suites. So the documentation always up to date, and the developer can spend time on something important.
Description
Lyfta is a subscription-based digital platform where teachers and pupils can access immersive storyworlds and curriculum-based lesson and assembly plans. Lyfta's theme-based learning experiences are ideal for teaching Literacy, PSHE, Global Citizenship and Art, as well as fostering values and skills such as empathy, self-direction, and critical thinking.
I was a key developer on the project's back-end since I got hired. I've developed HTTP API for organizations, classes, lessons, lesson plans, activities, and tasks.
I've resolved many tasks including small improvements and bug fixes.
Among others were:
- Automatic import of storyworlds on git push to a repository (using gitlab web-hooks).
- HTTP API to import users from CSV.
- Rake task to export/import lesson plans/activities/tasks to/from YAML.
- Full-text search on contents using a name, description, or tags. I made use of Postgres FTS.
Also, I've made a static site using Jekyll and Foresty.io - "Lyfta Rich Media". I made use of HTML, CSS, and Javascript and just wanted to refresh some of my front-end knowledge.