Being hands-on is the best way for you to learn. Practice interesting programming challenges like building your own BitTorrent client, Redis, DNS server, and even SQLite from scratch on CodeCrafters.
Sign up, and become a better engineer.
How to write a good self-review?
Self-review is where you summarize the work, and more importantly its impact, and put forth your case for a good review, a bonus, and a promotion. Here are some pointers that I followed while I wrote my self-review
1. I never wrote a self-review as a list of tasks completed
2. I kept it focussed more on quantified outcomes instead of output
Instead of saying I completed tasks a, b, and c; I always mentioned that "In the last year, I increased the performance of xyz by 23% percent by doing a, b, and c". The quantified impact of the work is crucial.
3. I showcased leadership skills - autonomy and ownership
Whenever possible I added pointers that showcased my leadership skills. In the above example, I always extended the pointer by saying "... by doing a, b, and c. While working on them I co-ordinated with teams p and q across timezones to ensure smooth and timely delivery".
4. I highlighted different initiatives I started
Instead of keeping self-review specific to task items I completed, I always mentioned a few pointers about the peripheral initiatives I took or started; for example, presented an org-wide tech talk, introduced a new process, etc.
5. I always highlighted the challenges involved
Some tasks are more challenging than others and hence I made sure that I gave them their due and highlighted the hurdles and challenges I overcame while getting things done. A line or two helped me demonstrate my problem-solving skills and resilience.
Self-review is an excellent opportunity to be your own advocate and it is important to put your best foot forward without sounding narcissistic.
You can find this post on my LinkedIn and Twitter; do leave a like.
📹 Video I posted this week
This week I posted What happens when you type a URL into your browser?
We all have wondered this at some point, and especially when we started using computers and browsing the internet, what really happens when we type a URL into our browser?
In this video, we start from absolute scratch and go on a journey to understand the most common components from a 10,000-foot view answering this very question.
🧠 Paper I read this week
This week I spent reading PolarDB-SCC: A Strongly Consistent Cloud-Native Database
This weekend I read a paper from Alibaba Group that proposes a solution for eventual consistency, the possibility of serving stale data, in a master-replica setup.
The paper "PolarDB-SCC" proposes a solution for a cloud-native environment and leverages RDMA to transmit and efficiently transmit write-ahead logs from master to replicas. It enables the cluster to maintain a near real-time copy of the data and serve consistent reads.
After skimming the paper once, I found the concept interesting, so putting this out as a recommendation. Over the weekend I will dive deeper. So, give it a read if the topic amuses you.
You can download this and other papers I recommend from my papershelf.
Importance of Log Sequence Numbers in WAL
Databases dump every single operation in WAL before it is applied to the actual data, and the Log Sequence Number (LSN) is a unique identifier associated with each record added to the WAL.
LSNs are monotonically increasing enabling replicas to keep track of the replication. The master node keeps a record of the highest LSN it has written. The difference between the master_lsn and the LSN on the replica helps the database determine the Replication Lag.
Thus LSNs are what enable us to achieve and implement three critical features of any durable database, and they are
recovery from failure and rebuilding the in-memory state of the database
asynchronous replication between master and replica
point-in-time snapshots by replaying changes from WAL until desired LSN
You can find this post on my LinkedIn and Twitter; do leave a like.
📰 Interesting articles I read this week
I read a few engineering blogs almost every single day, and here are the three articles I would recommend you to read.
Thank you so much for reading this edition of the newsletter 🔮 If you found it interesting, you will also love my courses
I keep sharing no fluff stuff across my socials, so, if you resonate do give me a follow on Twitter, LinkedIn, YouTube, GitHub
Great points covered here. Thank you for sharing. I love the articles recommendations as well.