Two Month Review

I thought I would share a quick list of the things I’ve learnt in my first two months of work at my new company. The different items I listed don’t have the same weight, some are just tips or little hacks, some others are new frameworks or disciplines. I don’t claim to master everything in that list but I feel confident talking about these and explaining what they are to someone who would need to fill in for me.

  1. Unix, Linux, Command line tools
    1. SSH
    2. Git and Gitlab
    3. Unix CLI tools
  2. Frameworks and Librairies
    1. Angular
    2. Testing Rails with RSpec
  3. Devops
  4. Project Management

Unix, Linux, Command line tools

SSH

  • ssh - how it works - configuring multiple ssh keys
  • rsync
  • scp

Git and Gitlab

  • git flow - tags - releases - hotfixes - features
  • git milestones
  • gitlab
  • gitlab-ci
  • workers
  • ci/cd

Unix CLI tools

  • sh scripts
  • du -hsc
  • systemctl - monitoring and managing Linux services
  • journalctl
  • systemd
  • services, .service files
  • cron jobs
  • users rights
  • su

Frameworks and Librairies

  • rabbitMQ - Message broken, sending messages accross micro-services
  • fog openstack - Librarie to communicate with openstack servers
  • OVH horizon openstack - instances - images - deploy scripts
  • hosting a website on OVH server
  • domain name, A, CNAME

Angular

  • angular - basic angular notions, use component, librairies, modules etc
  • ngx-translate
  • ng2-smart-table
  • create new components, modules, dependency injection

Testing Rails with RSpec

  • acceptance tests
  • auto generated doc - apitome
  • rspec synthax, subject, let - wordless rspec syntax
  • enqueued jobs
  • improved my testing skills
  • unit testing
  • ensuring test watertightness
  • mocks and doubles
  • edge cases
  • slackbots - slack-ruby-client library - types of auth bot/user
  • VCR - faking http responses

Devops

  • docker
  • docker-compose
  • hosting rails and angular apps on docker containers
  • communication in beetween containers
  • docker DNS

Project Management

  • Gitlab milestones
  • Releases - Issues
  • Agile development
  • Estimating task time
  • Remote work advantages
  • Importance of async communication