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

Resources

Challenges

  • Refacto a view partial

Architectural concepts

What you should master

  • Namespacing

  • Routes

  • Decorators

  • Presenters

  • Interactors

  • Form

  • Services

  • Serializers

  • Validators

  • Modules & Concerns

  • Inheritance & Composition

Resources

Challenges

  • 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

Ressources

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

Challenges

  • 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

  • Built.io

  • TangleJinx

Various

  • 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

Resources

extra tutorials:

Full-fledge apps

Lambda microservices

Infrastructure

Production

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

Integrations