I am dedicating the month of August to prepare for system design interviews. This preparation includes: Reading the book Acing the System Design Interview. I will read through 20 pages per day, about one chapter per day, and finish the book in three weeks. Practicing SDIs on Exponent. I will start doing that after I …
Read MoreI joined Open Sauced #100DaysOfOSS. It's a global event that promotes open source software and aims at helping beginners grow, gain experience, and contribute to the OSS community. The event started on July 23. Here is what I did since the event started: D1, July 23: I communicated with Ashley Davis, author of the …
Read MoreBootstrapping Microservices
Jul 23, 2023 · 1 min read · microservices book book review javascript cloud native project technical editing ·Today I finished reading and working through the awesome book Bootstrapping Microservices, by Ashley Davis. What I accomplished: I build the complete FlixTube application along the way. This helped me solidify my hands-on experience with a rich list of technologies: JavaScript Node.js Express Docker Docker Compose …
Read MoreYesterday I explored using GitHub Actions workflows for continuous deployment. I used a pipeline that takes code pushed to GitHub all the way to production, deployed on a Kubernetes cluster on Azure cloud. The deployment workflow is written in YAML, and in it there 4 levels: workflow jobs steps commands Here is an …
Read MoreYesterday I used the Infrastructure as Code, or IaC, tool Terraform to build Azure cloud infrastructure for the FlixTube video streaming microservices-based system. Terraform is an open source project written in Go that provides a mechanism to use HCL, or Hashicorp Configuration Language, to automate the process of …
Read MoreI enjoy teaching. I always have. The earliest I remember doing it I was only 14 years old. The first time I got paid to do it I was 20 years old. Over the last 30 years of me teaching, I taught Math, English, Programming, Software Development, and many other things. I'm 44 now, and I'm still teaching, professionally. I …
Read MoreCommunication Styles in Microservices
There are two communication styles in distributed systems: Direct, a.k.a. synchronous Indirect, a.k.a asynchronous Direct communication is used when a service wants to send a command to another, or when it wants to orchestrate a sequence of behaviors by multiple services, or when it needs to get an immediate response …
Read MoreToday I will continue my progress preparing for upcoming system design interviews. Today I will go through: CDNs APIs In addition, I will continue to build FlixTube. Today I will go through the communications and even push it into k8s.
Read MoreYesterday I learned more about the WebSocket communication protocol. Compared to HTTP(s), WebSocket allows: Server to communicate with client without client first sending a request. Multiple messages going back and forth between client and server in a single connection. WebSocket is thus a better fit for applications …
Read MoreAdding Features and Tests
Yesterday I worked further on my armenian-names NPM package. I added new features to enable users to get random names for boys and girls that start with a certain letter or letters. This was in response to requests from people I spoke with who said they'd like to see that feature in the package. I also added tests …
Read More