I asked my Director what the expectation is from engineers now that we have coding assistants and LLMs.
His answer was simple: if an engineer typically delivers 8 story points in a sprint, the expectation is now closer to 16. The goal isn't to spend less time working,it's to use the productivity gains from these tools to deliver more
If you're pursuing a BE/BTech and aiming for a campus placement offer, focus on both skills and CGPA.
A lot of seniors say, "CGPA doesn't matter"
For your long-term career, maybe not.
For campus placements, it absolutely does.
Build strong skills, but don't neglect your CGPA. You can't crack an interview for a company that won't even let you sit for it.
I asked my Director what the expectation is from engineers now that we have coding assistants and LLMs.
His answer was simple: if an engineer typically delivers 8 story points in a sprint, the expectation is now closer to 16. The goal isn't to spend less time working,it's to use the productivity gains from these tools to deliver more
Fun fact: Redis, or any database. does not just stop when you hit `Ctrl+C` or when the OS decides to shut down. Databases need to handle termination with extreme care.
This happens by trapping operating system signals like `SIGINT` and `SIGTERM` to ensure that active client commands finish executing and a final snapshot is safely persisted to disk before it says goodbye.
Today, we dive into the source code of Redis to look at how production-grade databases implement graceful shutdown using signal handling.
This is the 19th video in the Redis Internals series. Like always, we keep our focus on execution and not just theory, looking closely at how an open-source database coordinates with the operating system kernel to maintain data integrity and data consistency during its final moments.
In the video, I talk about standard POSIX signals (`SIGINT`, `SIGTERM`, and even edge-case signals like `SIGSEGV`), how native processes trap these interrupts, and the critical problem of preventing abrupt connection termination
We also dive directly into the Redis source code to see where it registers its signal handlers, and then we re-implement this exact graceful termination routine from scratch in Go.
By the way, 19 videos are now live:
1. Why Single-Threaded Redis Is Fast
2. Writing a TCP Echo Server
3. Wire Protocols
4. Implementing RESP
5. Implementing PING
6. Understanding Event Loops
7. Implementing Event Loops
8. Implementing GET, SET, and TTL
9. Implementing DEL, EXPIRE, and Cleanup
10. Evictions and Implementing first-eviction
11. Implementing Command Pipelining
12. Implementing AOF Persistence
13. Objects, Encodings, and Implementing INCR
14. Implementing INFO and allkeys-random Eviction
15. The Approximated LRU Algorithm
16. Implementing the Approx LRU Algorithm
17. How Redis Caps Its Memory Usage
18. How and Why Redis Overrides Malloc
19. Graceful Shutdown using Signal Handling
Hope this helps you better understand database internals and spark that engineering curiosity.
Give it a watch.
@arpit_bhayani How does Redis guarantee consistency if a SIGTERM arrives while an AOF rewrite or RDB snapshot is already in progress? Is there any point where a graceful shutdown can still leave durable storage in a partially updated state?
Unpopular opinion:
Bitbucket >>> GitHub
GitHub has become over-engineered with too many features crammed into the UI. Bitbucket feels cleaner, simpler, and gets out of your way when all you want to do is review code and ship software.
Anyone else feel the same?
Hi X people 👋
I'd like to connect with people who are:
• Alive
• Eat food
• Drink water
• Breathe air
• Employed
• Unemployed
• Can take a joke
• Can make a joke
• Interact a lot
• Don't interact at all
If you qualify for any of the above, let's follow each other and expand our professional network🙏