Learning trajectories

This page lists all the key skills and concepts one should aim to master as a full-fledge developer at Seraphin. Use this to guide your learnings towards new horizons!

Core skills (Ruby & Rails)

Tools & languages

What you should master

  • Slim
  • Javascript
  • CSS: Tailwind



  • Refacto a view partial

Architectural concepts

What you should master

  • Namespacing
  • Routes
  • Decorators
  • Presenters
  • Interactors
  • Form
  • Services
  • Serializers
  • Validators
  • Modules & Concerns
  • Inheritance & Composition



  • Namespace an existing model
  • Create an SP0 landing page with a Presenter and a Service to generate dynamic links
  • Inherit the ProfilingForm for a new product form to understand the structure
  • Refacto an existing service to use class methods
  • Move a reusable service to the /lib folder

Key gems and patches

  • Reform
  • Companions

Testing framework

What you should master

  • Unit tests
  • Integration tests
  • RSpec
  • Capybara
  • SitePrism
  • FactoryBot


Note that these blog articles relate to Rails 4.x, so some concepts are slightly outdated.


  • Add a testing scenario for an SP2 product
  • Add a unit test for a form
  • Add a unit test for an API

Scripting & configuration

  • Rake tasks
  • Capistrano tasks
  • Capistrano deployment
  • Environment files (application.rb, development.rb...)
  • Initializers

Key integrations

  • Typeform (Codex)
  • Typeform (inline URL parameters)
  • Yousign (Griffon)
  • ChargeBee
  • S3
  • TangleJinx


  • Metaprogramming (send, eval, define_method...)
  • On-page Vue app integration

JS & Vue.js

Core principles

  • Vue declarative rendering
  • Vue reactivity
  • Vue components
  • Vue computed vs watchers
  • Vue Mounted
  • Vue Methods
  • Vue events
  • Vue props
  • Vue lifecycle
  • Vuex
  • Vue router
  • Vue CLI
extra tutorials:

Full-fledge apps

Lambda microservices



🚀Deploying to production is a non-event. We are a DevOps team working hard on continuous integration and deployment.