<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Startup CTO &amp; Technical Director | Engineering, AI &amp; Security</title><description>The personal website of a tech startup CTO. Explore real-world insights on scalable software engineering, AI/ML, cybersecurity, and tech leadership.</description><link>https://techwithramesh.com/</link><language>en-us</language><item><title>9 Advanced RAG Techniques Explained</title><link>https://techwithramesh.com/blog/9-advanced-rag-techniques-explained/</link><guid isPermaLink="true">https://techwithramesh.com/blog/9-advanced-rag-techniques-explained/</guid><description>Here&apos;s a straightforward overview of 9 advanced RAG retrieval techniques, including hybrid search, HyDE, query routing, and others, each designed to solve specific challenges. It&apos;s a friendly guide to help you understand how each method works and what problems they address.</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate><category>ai-ml</category><category>rag</category><category>llm</category><author>Ramesh Rathnayake</author></item><item><title>What Kimi K3 Is, and Why Moonshot AI&apos;s New Model Is a Big Deal</title><link>https://techwithramesh.com/blog/kimi-k3-moonshot-ai/</link><guid isPermaLink="true">https://techwithramesh.com/blog/kimi-k3-moonshot-ai/</guid><description>Moonshot AI&apos;s Kimi K3 is an impressive 2.8-trillion-parameter open-weight model that&apos;s making waves in AI pricing, benchmarks, and the ongoing China-US competition. Here&apos;s a look at what&apos;s new!</description><pubDate>Sun, 19 Jul 2026 00:00:00 GMT</pubDate><category>ai-ml</category><category>llm</category><category>open-weight-models</category><author>Ramesh Rathnayake</author></item><item><title>The Three Hours Axios Belonged to Someone Else</title><link>https://techwithramesh.com/blog/axios-supply-chain-attack-2026/</link><guid isPermaLink="true">https://techwithramesh.com/blog/axios-supply-chain-attack-2026/</guid><description>Exploring the axios npm supply chain attack reveals a concerning story: a fake startup founder, a hijacked maintainer account, malware hidden in a popular JavaScript library, and a challenging 3-hour cleanup. It highlights the importance of vigilance in the open-source community.</description><pubDate>Mon, 25 May 2026 00:00:00 GMT</pubDate><category>security</category><category>supply-chain</category><author>Ramesh Rathnayake</author></item><item><title>A Practical Guide to Securing Logins and Access in Web Apps and APIs</title><link>https://techwithramesh.com/blog/a-practical-guide-to-securing-logins-and-access-in-web-apps-and-apis/</link><guid isPermaLink="true">https://techwithramesh.com/blog/a-practical-guide-to-securing-logins-and-access-in-web-apps-and-apis/</guid><description>Here&apos;s a helpful guide to essential authentication and authorization practices for your web apps and APIs, covering passwordless login, multi-factor authentication, password hashing, RBAC, and ABAC. These tips are designed to keep your applications secure and user-friendly.</description><pubDate>Fri, 03 Nov 2023 00:00:00 GMT</pubDate><category>security</category><category>auth</category><category>introduction</category><author>Ramesh Rathnayake</author></item><item><title>OAuth 2.0 Essentials</title><link>https://techwithramesh.com/blog/oauth-2-0-essentials/</link><guid isPermaLink="true">https://techwithramesh.com/blog/oauth-2-0-essentials/</guid><description>OAuth 2.0 is a common authorization framework that lets you grant applications limited access to your online accounts without sharing your passwords. Learn the roles, grant types, and steps.</description><pubDate>Sat, 02 Sep 2023 00:00:00 GMT</pubDate><category>security</category><category>auth</category><category>introduction</category><author>Ramesh Rathnayake</author></item><item><title>Amazon Prime Video&apos;s Monolith Pivot</title><link>https://techwithramesh.com/blog/amazon-prime-video-s-monolith-pivot/</link><guid isPermaLink="true">https://techwithramesh.com/blog/amazon-prime-video-s-monolith-pivot/</guid><description>Amazon Prime Video didn’t prove microservices are broken. This case study explains why a video quality service moved to a monolith, cutting costs by 90%+, and what it teaches about choosing architecture based on workload, scale, and operational complexity.</description><pubDate>Sun, 07 May 2023 00:00:00 GMT</pubDate><category>engineering</category><category>microservices</category><author>Ramesh Rathnayake</author></item><item><title>Strategy Design Pattern: What, Why, and How</title><link>https://techwithramesh.com/blog/strategy-design-pattern/</link><guid isPermaLink="true">https://techwithramesh.com/blog/strategy-design-pattern/</guid><description>The Strategy design pattern helps you create a group of algorithms and switch between them while your program runs. This makes your code cleaner and easier to manage by cutting down on complexity and repeated code.</description><pubDate>Thu, 29 Dec 2022 00:00:00 GMT</pubDate><category>engineering</category><category>design-patterns</category><author>Ramesh Rathnayake</author></item><item><title>Effective Work Habits for Remote Workers: A Step-by-Step Guide</title><link>https://techwithramesh.com/blog/working-effectively/</link><guid isPermaLink="true">https://techwithramesh.com/blog/working-effectively/</guid><description>Working remotely requires a different set of skills and habits than working in an office. Here are some tips on how to work effectively in a remote environment.</description><pubDate>Thu, 22 Dec 2022 00:00:00 GMT</pubDate><category>productivity</category><category>work-habits</category><author>Ramesh Rathnayake</author></item><item><title>Understanding ERC-1155: Features and Use Cases of the Next-Gen Token Standard</title><link>https://techwithramesh.com/blog/understand-erc-1155/</link><guid isPermaLink="true">https://techwithramesh.com/blog/understand-erc-1155/</guid><description>ERC-1155 is a smart contract standard for token management on Ethereum. It combines the features of ERC-20 and ERC-721 to support multiple token types and reduce gas fees.</description><pubDate>Tue, 20 Dec 2022 00:00:00 GMT</pubDate><category>engineering</category><category>blockchain</category><author>Ramesh Rathnayake</author></item><item><title>Ambassador Design Pattern in Microservices</title><link>https://techwithramesh.com/blog/ambassador-design-pattern-in-microservices/</link><guid isPermaLink="true">https://techwithramesh.com/blog/ambassador-design-pattern-in-microservices/</guid><description>Learn how the Ambassador design pattern improves microservices with centralized routing, service discovery, sharding support, and safe request splitting for experiments.</description><pubDate>Sun, 18 Dec 2022 00:00:00 GMT</pubDate><category>engineering</category><category>microservices</category><category>design-patterns</category><author>Ramesh Rathnayake</author></item><item><title>Microservices with the Chassis Pattern</title><link>https://techwithramesh.com/blog/microservices-with-the-chassis-pattern/</link><guid isPermaLink="true">https://techwithramesh.com/blog/microservices-with-the-chassis-pattern/</guid><description>Explore the power of the Microservice Chassis pattern in building scalable, secure, and reliable microservices. Learn key functionalities, best practices, and real-world use cases.</description><pubDate>Sun, 11 Dec 2022 00:00:00 GMT</pubDate><category>engineering</category><category>microservices</category><category>design-patterns</category><author>Ramesh Rathnayake</author></item><item><title>The Art of Disagreeing: A Guide to Professional and Productive Discussions</title><link>https://techwithramesh.com/blog/disagree-respectfully/</link><guid isPermaLink="true">https://techwithramesh.com/blog/disagree-respectfully/</guid><description>Sometimes you may encounter an argument you disagree with. In this article, I&apos;ll show you how to disagree respectfully and constructively, using some simple steps and tips.</description><pubDate>Mon, 28 Nov 2022 00:00:00 GMT</pubDate><category>productivity</category><category>communication</category><author>Ramesh Rathnayake</author></item><item><title>Set Up ESLint for NPM Projects</title><link>https://techwithramesh.com/blog/add-eslint-with-npm/</link><guid isPermaLink="true">https://techwithramesh.com/blog/add-eslint-with-npm/</guid><description>Learn how to configure ESLint with the modern flat config setup, add lint scripts, and use Husky plus lint-staged to prevent commits with lint errors in JavaScript or TypeScript projects.</description><pubDate>Wed, 30 Dec 2020 00:00:00 GMT</pubDate><category>productivity</category><category>lint</category><category>typescript</category><author>Ramesh Rathnayake</author></item><item><title>Custom Token Authentication with Firebase</title><link>https://techwithramesh.com/blog/custom-token-authentication-with-firebase/</link><guid isPermaLink="true">https://techwithramesh.com/blog/custom-token-authentication-with-firebase/</guid><description>Sometimes you need to authenticate your app with a third-party authentication server while still using the features Firebase provides. Here is how to create and use a custom token to do exactly that.</description><pubDate>Wed, 16 Dec 2020 00:00:00 GMT</pubDate><category>security</category><category>firebase</category><category>auth</category><author>Ramesh Rathnayake</author></item><item><title>Secure Firebase Cloud Functions with Firebase Auth</title><link>https://techwithramesh.com/blog/secure-firebase-cloud-functions-with-firebase-auth/</link><guid isPermaLink="true">https://techwithramesh.com/blog/secure-firebase-cloud-functions-with-firebase-auth/</guid><description>Learn how to secure Firebase HTTPS Cloud Functions using Firebase Authentication. Validate Bearer ID tokens with Express middleware and the Admin SDK to allow only authenticated users.</description><pubDate>Sat, 12 Dec 2020 00:00:00 GMT</pubDate><category>security</category><category>firebase</category><category>auth</category><author>Ramesh Rathnayake</author></item><item><title>Navigate to a View on FCM Notification Click</title><link>https://techwithramesh.com/blog/firebase-navigate-on-notification-click/</link><guid isPermaLink="true">https://techwithramesh.com/blog/firebase-navigate-on-notification-click/</guid><description>Firebase Cloud Messaging (FCM) can send notifications to a single or multiple devices. Here is how to open the relevant screen in your app when a user clicks the notification.</description><pubDate>Tue, 30 Jun 2020 00:00:00 GMT</pubDate><category>engineering</category><category>firebase</category><category>mobile</category><category>flutter</category><author>Ramesh Rathnayake</author></item><item><title>How to use Future Builders Effectively</title><link>https://techwithramesh.com/blog/how-to-use-future-builders-effectively/</link><guid isPermaLink="true">https://techwithramesh.com/blog/how-to-use-future-builders-effectively/</guid><description>It&apos;s not common to use Futures directly in a Flutter view, but using them incorrectly can seriously hurt your app&apos;s performance. Here&apos;s the most effective way to use Future values in your app.</description><pubDate>Mon, 29 Jun 2020 00:00:00 GMT</pubDate><category>engineering</category><category>firebase</category><category>mobile</category><category>flutter</category><author>Ramesh Rathnayake</author></item><item><title>This is how we write Firebase Cloud Functions</title><link>https://techwithramesh.com/blog/cloud-functions-basics-in-typescript/</link><guid isPermaLink="true">https://techwithramesh.com/blog/cloud-functions-basics-in-typescript/</guid><description>Learn how to structure Firebase Cloud Functions with TypeScript using clean architecture. Build scalable handlers, services, DAOs, and mappers for maintainable serverless backends.</description><pubDate>Mon, 04 May 2020 00:00:00 GMT</pubDate><category>engineering</category><category>firebase</category><category>typescript</category><category>design-patterns</category><author>Ramesh Rathnayake</author></item><item><title>Introduction to Sum Tree</title><link>https://techwithramesh.com/blog/introduction-to-sum-tree/</link><guid isPermaLink="true">https://techwithramesh.com/blog/introduction-to-sum-tree/</guid><description>Sum Trees are a data structure for sampling data by priority, commonly used in reinforcement learning to prioritize experiences that are most valuable for a model to learn from.</description><pubDate>Mon, 18 Mar 2019 00:00:00 GMT</pubDate><category>ai-ml</category><category>introduction</category><category>python</category><author>Ramesh Rathnayake</author></item><item><title>Google Hacking Database</title><link>https://techwithramesh.com/blog/google-hacking-database/</link><guid isPermaLink="true">https://techwithramesh.com/blog/google-hacking-database/</guid><description>Learn how to use Google dorks and the Google Hacking Database to find vulnerabilities on your own web servers before attackers do. All you need is a browser.</description><pubDate>Thu, 07 Feb 2019 00:00:00 GMT</pubDate><category>security</category><category>osint</category><author>Ramesh Rathnayake</author></item><item><title>Introduction to Neural Networks</title><link>https://techwithramesh.com/blog/introduction-to-neural-networks/</link><guid isPermaLink="true">https://techwithramesh.com/blog/introduction-to-neural-networks/</guid><description>Machine Learning is a very interesting and popular topic. This second article in the introduction to machine learning series covers the basic concepts of Artificial Neural Networks.</description><pubDate>Sun, 23 Dec 2018 00:00:00 GMT</pubDate><category>ai-ml</category><category>neural-network</category><category>introduction</category><author>Ramesh Rathnayake</author></item><item><title>Introduction to Machine Learning</title><link>https://techwithramesh.com/blog/introduction-to-machine-learning/</link><guid isPermaLink="true">https://techwithramesh.com/blog/introduction-to-machine-learning/</guid><description>Machine learning is an exciting and fast-growing field. This article is the first in a series that introduces the basics and some useful tips.</description><pubDate>Thu, 13 Dec 2018 00:00:00 GMT</pubDate><category>ai-ml</category><category>introduction</category><author>Ramesh Rathnayake</author></item><item><title>Vim Cheat Sheet</title><link>https://techwithramesh.com/blog/vim-cheat-sheet/</link><guid isPermaLink="true">https://techwithramesh.com/blog/vim-cheat-sheet/</guid><description>Vim is a powerful text editor, but it can be tricky to learn at first. This cheat sheet lists the Vim commands that intermediate users use most often.</description><pubDate>Sat, 08 Dec 2018 00:00:00 GMT</pubDate><category>productivity</category><category>cli</category><author>Ramesh Rathnayake</author></item><item><title>Python Coding Best Practices</title><link>https://techwithramesh.com/blog/python-coding-best-practices/</link><guid isPermaLink="true">https://techwithramesh.com/blog/python-coding-best-practices/</guid><description>A practical style guide for writing clean, consistent Python code. These are the conventions used by the Machine Learning Team at FCode Labs.</description><pubDate>Mon, 03 Dec 2018 00:00:00 GMT</pubDate><category>engineering</category><category>python</category><category>lint</category><author>Ramesh Rathnayake</author></item></channel></rss>