Fullstack Traineeship Program
In Padawans We Trust
Because Jedis are rare, because the Force is in all of us, because training people is very rewarding, because we need you, here is our 6 months Fullstack Traineeship Program.

Concepts

    Buddy System: one of your dev colleague will always be in charge of answering your questions and be there for your needs. This is done on a rotating schedule:
      First week: new buddy every day.
      Weeks [2, 3, 4]: new buddy every week.
      Months [2, 3, 4, 5, 6]: new buddy every 2 weeks (sprint).
    1 pair programming session with someone else that your buddy every week.
    1-to-1 interview every 2 weeks with your CTO.
    Weekly report: show me what you did.
    You will have to share with us a personal development plan detailing your goals in the coming month/3 months/6 months/year/5 years.
    You will have to build a personal trail'app that you will update all along this traineeship to show off your learnings and new skills.

Planning

Week 1: Discovery

The goal of this very first week with us will mostly be to get on board! So lots of info sessions to get to know our stuffs. Buckle up!

Lessons:

    Products Tour:
      Main app
      Extension
      Public API
      Zapier
    Culture Discovery
    Machine Setup:
      Boot prospectio on local machine
    Codebases Tour:
      prospectio
        main app
        extension
        design system
      email-gateway
      prospectio-api-doc
      prospectio-zapier
      marketing-website
    DevOp 101:
      Heroku
      GitPages
    Dev Team Workflow:
      Sprints
      Pivotal
      Feature development flow
    Architecture Concepts:
      MVC+: Controllers, Commands & Services
      Business logic
      Domains
    Prospectio Backend Main Components Tour:
      Events bus & callbacks
      Sending system
      Tracking systems
      Email finder
      Background jobs & CRONs
      Soft deletion

Goals:

    Update the marketing website to add yourself to the team page
    Fix one typo into the main app
    Fix one typo into this playbook
    Make your first contribution to the prospectio repo

Week 2: Advanced Ruby & Rails

Lessons:

    Ruby:
      OOP Principles
      Proc & lambda
      Meta programming
      Conditional assignment
      Control structure (begin, rescue, ensure)
      Modules
    Rails:
      ActiveRecord:
        Scopes
        Transactions
        Locks
        Delegation
        Polymorphic associations
        Advanced migrations & indexes
      REST API
      ActionCable
      ActiveStorage
    Advanced Git Usage

Tasks:

    Refactoring:
      1 controller
      1 model
      1 service
      1 job
    Fixing your first bug on prospectio
    Start building your own trail'app

Week 3 & 4: Frontend

Lessons:

    JS:
      ES6 (const, let, fat arrows, etc.)
      Native classes
      Import/Export Mechanism
      XHR/AJAX
      Promises
    Ember.js:
      Routing, controllers & templates
      components
      Ember Data
      Services
      The Golden Rule: Data Down, Actions Up
      Custom APIs:
        nested entities & UUID
        custom actions & actionable parent
    Templating:
      CSS 101
      Flexbox
      BEM & IT structure

Tasks:

    Using Ember for the frontend of your trail'app
    Convert legacy Ember object to JS native class:
      1 model
      1 controller
      1 route
      1 component
    Make your first frontend contribution

Months 2 & 3: Building features as a Team

Lessons:

    Clean Code 101
    Testing
    Debugging Techniques
    Advanced SQL & DB Performance
    Performance
    Chrome API
    Bash

Tasks:

    Writing specs for every new backend code you write
    Improve the tests coverage by 2%
    Add specs to your trail'app
    Building your first fullstack feature
    Contribute to the Playbook

Months [4, 5, 6]: Becoming an independent craftsman

Lessons:

    Networking 101
    Release Planification
    Advanced DevOps
    Secure Development

Tasks:

    Release one epic per month
    Contribute to the Playbook
Last modified 6mo ago