Software Architect with over 14 years of experience. Playing the role of an architect in the analytics platform team. Responsible for coding, designing, and architecting highly performant backend services, that drive the entire analytics engine across all the products in the organization. Lately have been involved in prompt Engineering and openAI initiatives.
I love building things. While hard engineering problems are often intrinsically fun to tackle, I'm most attracted to solving real customer problems with a business justification and which can make lives easier for users/developers.
I constantly strive for new challenges, and never shy away from burning my hands with lastest technology offering out there.
My personal interests include:
This book serves as my go-to reference guide, which I often pick up and read. I also enjoy Martin Kleppmann's insightful videos on YouTube to complement the material. I'm working on quick reference notes soon, focusing on key topics like transactions across distributed systems, replication, and consensus algorithms.
Multi-tenant, designed to provide low-latency responses, typically in the single-digit millisecond range, regardless of the data size or traffic volume. Highly scalable DB, handled trillions of API calls with peak requests reaching 89.2 million per second. Practical scenarios around the operations challenges.
Large Files: GFS is optimized for large files, typically ranging from megabytes to gigabytes in size. It efficiently manages these files by breaking them into smaller chunks.
Chunk Data: Files are divided into fixed-size chunks (usually 64 MB), stored across multiple servers. Each chunk is replicated for fault tolerance, ensuring data availability even in case of hardware failures.
Metadata: GFS maintains metadata about files and their locations, including information on chunk sizes, replication status, and the mapping of chunks to storage nodes.
Versioning: GFS supports versioning of files, allowing users to access previous versions and manage changes over time.
Fault Tolerance: The system is designed to handle failures gracefully by replicating chunks across different machines and automatically recovering from errors.
Append-Only Operations: GFS supports append operations efficiently, making it suitable for applications that require logging or streaming data.
Want to know more about my work? You can view or download my resume and a detailed PDF about my projects below: