My Ruby Portfolio
The project consists of two parts: main grape-based API backend and web crawler, gathering vehicle sell postings from the web. API includes tricky communication layer based on Twilio. My noticeable goals were:
- migrate both apps from Resque to Sidekiq (jobs rework, queues tuning)
- add Sidekiq monitoring and logging extensions
- refactor/add MMS handling for Twilio
- leasing and freeing Twilio phone numbers
- forwarding calls/steganography (shown on screenshot)
- Amazon EC2 instances managing and tuning
- rewrite and make testable internal Slack messenger (shown on screenshot)
- integration with NewRelic, Rollbar, Papertrail and Dead Man’s Snitch 3rd-party services
- plenty of small refactorings (code had low quality)
And of course everything was tested with Rspec.
NOTE: my goals were related to backend onlyVisit
AngularJs + Ruby on Rails project with integration with Apple Passbook API and Apple push service. This project was done solely by myself for BestFit mobile company.
- WYSIWYG pass designer with near pixel-perfect result with support of all five pass types
- several versions of the same pass supported
- ability to schedule publishing any version to registered devices using APB API (+push service)
- generating and signing passes
- simple and robust hand-crafted image uploading service (instead of Carrierwave or Paperclip). Creating it allowed decoupling image processing and make the whole pass creation process straight and neat.
- a whole bunch of nice other features
Heavy refactoring/cleanup/drying of legacy code and new features implementation. There was no unit tests at all, and became more than 500 after about three months as I’ve joined project.
- common gems toolbox (about one hundred gems; rspec, cucumber, poltergeist, rails 3.2, capistrano, mysql etc.)
devisewith heavy customization to satisfy business needs
active_merchantbilling (with authorize.net binding/testing)
activeadminwith decorated models
wicked_pdffor health history pdf generation
cocoonfor nested forms (yep, it was long time ago :)
jenkinsCI with github PR triggers
Note on frontend: when I joined this project, frontend (including JS) was almost completed, I’ve done only refactoring of CSS (SCSS+Compass) and JS (CS).Visit
Almost completely rewritten backend (Ruby on Rails based) ugly source code, added completely missed integration/unit specs, added Mercury Editor for admins, no frontend work applied (client is waiting for new design), removed or taken from gems 90% of code (JS mostly).
Results of refactoring:
3,626,024 bytes -> 322,949 bytes 536 files changed 5562 insertions(+) 98880 deletions(-)
Less code, less trouble :)Visit
Regular complexity site for Russian logistic company, made solely by myself from the ground. Some features (menu items) client decided to implement in the future.
- Ruby on Rails 3.2
- MySQL (not my decision)
- strong_parameters (while using Ruby on Rails 3.2)