This week I met with my assigned buddy, V. He is supposed to guide me during the internship.
My meeting with V went well, he told me more about the company and the team I would be working with. And based on my interests in software development, he advised me to start by learning Kubernetes, Python and Git. He advised me to:
Think about how I can improve myself. And then think of what I can contribute. Not the other way around.
He added me to some chats for the teams. He also showed me the fedora project website where all work tickets are assigned.
I followed V's advice by learning about Kubernetes. I am taking a course on Udacity called "Scalable Microservices with Kubernetes". This course uses Google Cloud Shell for running Kubernetes. The course has clarified a lot I did not know about Microservices. When it comes to following microservice principles, this comment from Adrian Cockcroft stands out:
The way the application is structured matters, so does the way the organisation is structured. You cannot use this principle in a company that uses the waterfall model.
One of the more notable things I learned is how to build 12 factors apps; it teaches how to build apps that can be supported with Microservices. The factors that make the most sense to me are:
Codebase - one codebase should be tracked in version control like Github
Dependencies - should be declared and isolated from the codebase
Config - configuration files should not be stored within the code but in the virtual environment
Build, release and run - these stages should be treated separately
Dev/prod parity - in terms of the libraries and tools used, the development, staging and production should be as similar as possible
This week's lessons
I learned what a container is
I learned the difference between a container and a virtual machine
I learned about 12-factor apps
I got to practice working with Kubernetes on the Google Cloud Shell Editor
What next?
Containers and Kubernetes almost make sense but I still have a bit more to learn on my course, so I will be working on that. Then I will start to refresh my Python programming.
Comments