<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Dhaval Mojidra</title>
    <description>The latest articles on Forem by Dhaval Mojidra (@dhavalmojidra).</description>
    <link>https://forem.com/dhavalmojidra</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1598838%2Fd649ce59-035a-4e03-8b06-7c73c29f9a6d.jpg</url>
      <title>Forem: Dhaval Mojidra</title>
      <link>https://forem.com/dhavalmojidra</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/dhavalmojidra"/>
    <language>en</language>
    <item>
      <title>How to Set Up an S3 Trigger for Lambda — and Kick Off a Step Functions Workflow</title>
      <dc:creator>Dhaval Mojidra</dc:creator>
      <pubDate>Sat, 08 Nov 2025 05:02:53 +0000</pubDate>
      <link>https://forem.com/dhavalmojidra/how-to-set-up-an-s3-trigger-for-lambda-and-kick-off-a-step-functions-workflow-6cj</link>
      <guid>https://forem.com/dhavalmojidra/how-to-set-up-an-s3-trigger-for-lambda-and-kick-off-a-step-functions-workflow-6cj</guid>
      <description>&lt;p&gt;Hey folks 👋  &lt;/p&gt;

&lt;p&gt;Recently, I worked on a project where I needed to &lt;strong&gt;trigger a Lambda function whenever a file was uploaded to an S3 bucket&lt;/strong&gt; — but with a twist: that Lambda then had to &lt;strong&gt;start an AWS Step Functions workflow&lt;/strong&gt;.  &lt;/p&gt;

&lt;p&gt;Here’s a quick rundown of how I set it up 👇  &lt;/p&gt;




&lt;h3&gt;
  
  
  1️⃣ S3 Bucket Setup
&lt;/h3&gt;

&lt;p&gt;I created an &lt;strong&gt;S3 bucket&lt;/strong&gt; and configured it to trigger a &lt;strong&gt;Lambda function&lt;/strong&gt; on the &lt;code&gt;PUT&lt;/code&gt; event — basically, whenever a new file is uploaded.  &lt;/p&gt;




&lt;h3&gt;
  
  
  2️⃣ Lambda Function
&lt;/h3&gt;

&lt;p&gt;Inside the Lambda, I captured the &lt;strong&gt;event details&lt;/strong&gt; (like file name, path, etc.), did a bit of validation and processing, and then triggered the &lt;strong&gt;Step Functions state machine&lt;/strong&gt; using the AWS SDK.  &lt;/p&gt;




&lt;h3&gt;
  
  
  3️⃣ Step Functions Execution
&lt;/h3&gt;

&lt;p&gt;The Lambda started the &lt;strong&gt;Step Function execution&lt;/strong&gt; and passed along all the necessary input for the workflow to handle the next steps — things like &lt;strong&gt;batch processing, file transformations, or triggering other services&lt;/strong&gt;.  &lt;/p&gt;




&lt;p&gt;💡 &lt;strong&gt;High-level flow looks like this:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Upload file to S3
&lt;/li&gt;
&lt;li&gt;S3 event triggers Lambda
&lt;/li&gt;
&lt;li&gt;Lambda executes → starts Step Functions workflow
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;This setup helped &lt;strong&gt;automate a lot of the data flow&lt;/strong&gt; and made the process super reliable — no manual intervention needed!  &lt;/p&gt;

&lt;p&gt;If anyone’s trying something similar and wants a look at the &lt;strong&gt;sample code or setup steps&lt;/strong&gt;, happy to share! Just drop a comment. 👇&lt;/p&gt;

</description>
      <category>aws</category>
      <category>ai</category>
      <category>s3</category>
      <category>awsindia</category>
    </item>
    <item>
      <title>🚀 My Event at GTU: Learning About GenAI, Vector Databases, RAG &amp; MCP with AWS</title>
      <dc:creator>Dhaval Mojidra</dc:creator>
      <pubDate>Sun, 21 Sep 2025 05:50:36 +0000</pubDate>
      <link>https://forem.com/dhavalmojidra/my-event-at-gtu-learning-about-genai-vector-databases-rag-mcp-with-aws-4e99</link>
      <guid>https://forem.com/dhavalmojidra/my-event-at-gtu-learning-about-genai-vector-databases-rag-mcp-with-aws-4e99</guid>
      <description>&lt;p&gt;I recently attended a two-day workshop on Generative AI at GTU, and I have to say, it was much better than I expected.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔑 What I Took Away
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. Generative AI in Practice
&lt;/h3&gt;

&lt;p&gt;The sessions started with the basics of LLMs (Large Language Models). I knew the general idea — they generate text that feels human — but the discussion went deeper into prompt engineering and fine-tuning, which can drastically change how useful the model is.&lt;/p&gt;

&lt;p&gt;One thing that stood out was how Amazon &lt;strong&gt;Bedrock&lt;/strong&gt; simplifies the whole process. You don’t have to worry about hosting big models or scaling servers. You just call the service and focus on building your app. I had always assumed working with LLMs meant a huge infrastructure overhead, so this felt like a pleasant surprise.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Why Vector Databases Are a Game Changer
&lt;/h3&gt;

&lt;p&gt;The next topic was vector databases, and this was a lightbulb moment for me. Traditional databases are fine for storing rows and columns, but they struggle when you need to search by meaning instead of exact words. That’s where &lt;strong&gt;vectors (embeddings)&lt;/strong&gt; come in — they let you search semantically.&lt;/p&gt;

&lt;p&gt;We briefly compared tools like &lt;strong&gt;Pinecone&lt;/strong&gt; and &lt;strong&gt;Weaviate&lt;/strong&gt;, but what caught my eye was &lt;strong&gt;Amazon OpenSearch Service&lt;/strong&gt; now supporting vector search natively. That means you can handle embeddings and similarity queries without setting up a separate system. It felt practical, especially if you’re already using AWS.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. RAG (Retrieval-Augmented Generation)
&lt;/h3&gt;

&lt;p&gt;This was probably the most practical part of the workshop for me. Normally, an LLM has no idea about your company’s documents. With &lt;strong&gt;RAG&lt;/strong&gt;, the model can retrieve the right information first and then generate an answer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;RAG Flow&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;User query → Create embedding → Search in vector DB → Pass results to LLM → Generate response&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On AWS, the demo combined:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Amazon Kendra&lt;/strong&gt; for smart search&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon S3&lt;/strong&gt; for storing the documents&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon Bedrock&lt;/strong&gt; for generating the final response&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Seeing it in action was impressive. They showed a chatbot answering specific company FAQs without hallucinating. At that point, I found myself thinking about real ways to apply it in projects.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. MCP (Model Context Protocol)
&lt;/h3&gt;

&lt;p&gt;The final piece we explored was &lt;strong&gt;MCP (Model Context Protocol)&lt;/strong&gt;. In simple terms, it lets LLMs interact with tools and APIs instead of just “making things up.”&lt;/p&gt;

&lt;p&gt;The AWS stack here included:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Amazon API Gateway&lt;/strong&gt; to expose APIs&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AWS Lambda&lt;/strong&gt; to run lightweight functions&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon Bedrock Agents&lt;/strong&gt; to decide which tool should be called at the right time&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It felt like the missing piece for building AI systems that are both powerful and safe to use in production.&lt;/p&gt;

&lt;p&gt;Overall, it was a great event that turned abstract AI buzzwords into something practical and tangible. If you’ve been exploring GenAI on AWS, I’d love to connect and swap notes. 🚀&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0b0zb85db6uem07ugzip.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0b0zb85db6uem07ugzip.jpg" alt=" " width="800" height="600"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  dhavalmojidra #awsugahm #GenerativeAI #AIWorkshop #AWS #AmazonBedrock #VectorDatabases #RAG #MCP #OpenSearch #AIInAction #AIForBusiness #TechInnovation #MachineLearning #LLM #AIWorkshop #AWSCloud #AIIntegration #TechCommunity #GTUWorkshop #AIExperiments #PromptEngineering #VectorSearch
&lt;/h1&gt;

</description>
      <category>aws</category>
      <category>ai</category>
      <category>genai</category>
      <category>awsindia</category>
    </item>
    <item>
      <title>Top 7 Best Practices to Secure Your Amazon S3 Buckets</title>
      <dc:creator>Dhaval Mojidra</dc:creator>
      <pubDate>Mon, 15 Sep 2025 10:46:53 +0000</pubDate>
      <link>https://forem.com/dhavalmojidra/top-7-best-practices-to-secure-your-amazon-s3-buckets-115o</link>
      <guid>https://forem.com/dhavalmojidra/top-7-best-practices-to-secure-your-amazon-s3-buckets-115o</guid>
      <description>&lt;h1&gt;
  
  
  Why Security Matters
&lt;/h1&gt;

&lt;p&gt;Imagine your S3 bucket as a storage locker. Leave it unlatched—or worse, wide open—and anyone passing by can help themselves to what’s inside. That could expose financial records, create compliance nightmares, or cost your business real money. The bottom line? Security isn’t optional; it’s essential.&lt;/p&gt;




&lt;h2&gt;
  
  
  1. Keep Access Tight
&lt;/h2&gt;

&lt;p&gt;Give people and apps only the keys they truly need. Use IAM roles with temporary access instead of permanent keys lying around. It’s like handing someone a visitor badge that expires at the end of the day, rather than a master key to your office.&lt;/p&gt;




&lt;h2&gt;
  
  
  2. Write Smart Policies
&lt;/h2&gt;

&lt;p&gt;Bucket policies let you fine-tune who can do what. They’re clearer than ACLs and easier to maintain. Public-read or public-write? Unless you’re running a website that requires it, avoid them—those settings are basically leaving your door unlocked.&lt;/p&gt;




&lt;h2&gt;
  
  
  3. Encrypt as a Habit
&lt;/h2&gt;

&lt;p&gt;Encryption is your safety net. AWS makes it simple with built-in options like SSE-S3 and SSE-KMS. Want total control? Bring your own keys or even encrypt before upload. Either way, the goal is the same: if someone does get hold of the data, it’s useless to them.&lt;/p&gt;




&lt;h2&gt;
  
  
  4. Watch What’s Happening
&lt;/h2&gt;

&lt;p&gt;Logs and alarms are your early warning system. Switch on server access logging, use CloudTrail to track actions, and set CloudWatch alerts. That way, unusual activity stands out before it becomes a real problem.&lt;/p&gt;




&lt;h2&gt;
  
  
  5. Protect Against Slip-Ups
&lt;/h2&gt;

&lt;p&gt;Files get deleted, things get overwritten—it happens. Versioning and replication give you a safety net so one mistake doesn’t turn into a disaster.&lt;/p&gt;




&lt;h2&gt;
  
  
  6. Say “No” to Public Buckets
&lt;/h2&gt;

&lt;p&gt;Private should be the default. Use Block Public Access and run regular checks with Trusted Advisor. Think of it as walking the halls at night, making sure all the doors are locked.&lt;/p&gt;




&lt;h2&gt;
  
  
  7. Let AWS Do Some Heavy Lifting
&lt;/h2&gt;

&lt;p&gt;You don’t need to build everything from scratch. Tools like Macie and Config quietly handle the background checks—spotting sensitive data, catching weak settings, and helping you stay compliant with less effort.&lt;/p&gt;

&lt;h1&gt;
  
  
  dhavalmojidra #awsugahm #AWS #S3 #CloudSecurity #CyberSecurity #DevOps #DataProtection #Encryption #CloudComputing #Serverless #InfoSec
&lt;/h1&gt;

</description>
      <category>storage</category>
      <category>aws</category>
      <category>awsindia</category>
      <category>s3bucket</category>
    </item>
    <item>
      <title>AWS Storage Session at GTU 🚀</title>
      <dc:creator>Dhaval Mojidra</dc:creator>
      <pubDate>Sun, 15 Jun 2025 17:06:46 +0000</pubDate>
      <link>https://forem.com/dhavalmojidra/my-aws-storage-session-at-gtu-5ald</link>
      <guid>https://forem.com/dhavalmojidra/my-aws-storage-session-at-gtu-5ald</guid>
      <description>&lt;h1&gt;
  
  
  The last two days were truly special
&lt;/h1&gt;

&lt;p&gt;I had the privilege of speaking at a two-day &lt;strong&gt;AWS Academy Workshop&lt;/strong&gt;, organized in collaboration with &lt;strong&gt;Gujarat Technological University (GTU)&lt;/strong&gt; and &lt;strong&gt;AWS User Group Ahmedabad&lt;/strong&gt;. Sharing knowledge becomes a two-way street when everyone in the room is eager to learn and contribute.&lt;/p&gt;

&lt;p&gt;I delivered a session on &lt;strong&gt;AWS Storage Services&lt;/strong&gt;, a topic I’m passionate about because of its importance in building real-world cloud solutions.&lt;/p&gt;




&lt;h2&gt;
  
  
  What I covered: the storage trio ☁️📦
&lt;/h2&gt;

&lt;p&gt;My session focused on three key AWS storage services:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Amazon S3&lt;/strong&gt; – Object storage that powers everything from static websites to backups.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon EBS&lt;/strong&gt; – High-performance block storage designed for EC2 instances.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Amazon EFS&lt;/strong&gt; – Scalable file storage you can mount across multiple instances.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;We talked about real use cases, cost-saving strategies, and best practices for security. I shared insights on choosing &lt;strong&gt;EFS vs. EBS&lt;/strong&gt; in different scenarios and explained how &lt;strong&gt;S3 lifecycle rules&lt;/strong&gt; can cut costs without sacrificing performance.&lt;/p&gt;




&lt;p&gt;The best part? It wasn’t a one-way lecture — it turned into an engaging conversation with the audience, with folks sharing their own experiences and challenges.&lt;/p&gt;




&lt;p&gt;📬 &lt;strong&gt;Connect me:&lt;/strong&gt; &lt;a href="https://www.linkedin.com/in/dhavalmojidra" rel="noopener noreferrer"&gt;https://www.linkedin.com/in/dhavalmojidra&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  dhavalmojidra #awsugahm #AWS #CloudComputing #AWSServices #S3 #EBS #EFS #CloudStorage #AWSCommunity #AWSUserGroup #GTU #DevOps #TechEvents
&lt;/h1&gt;

</description>
      <category>dhavalmojidra</category>
      <category>awsugahm</category>
      <category>aws</category>
      <category>storage</category>
    </item>
    <item>
      <title>AWS Certified Cloud Practitioner</title>
      <dc:creator>Dhaval Mojidra</dc:creator>
      <pubDate>Mon, 19 May 2025 08:35:43 +0000</pubDate>
      <link>https://forem.com/dhavalmojidra/aws-certified-cloud-practitioner-516o</link>
      <guid>https://forem.com/dhavalmojidra/aws-certified-cloud-practitioner-516o</guid>
      <description>&lt;p&gt;&lt;strong&gt;Certification Overview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The AWS Certified Cloud Practitioner is the perfect entry‑level credential for anyone looking to validate their foundational understanding of AWS Cloud. It covers the core concepts of cloud computing, AWS services, pricing models, security best practices, and the shared responsibility model—without requiring any hands‑on technical experience.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Who Should Pursue This?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Non‑technical professionals (e.g., sales, marketing, project managers) seeking to speak the “language of the cloud”&lt;/li&gt;
&lt;li&gt;Technical staff new to AWS (developers, sysadmins, architects) looking for a broad, vendor‑neutral grounding before diving deeper&lt;/li&gt;
&lt;li&gt;Decision‑makers and stakeholders who need to understand cloud economics and basic architecture patterns&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Exam Details&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Format: Multiple choice and multiple response questions&lt;/li&gt;
&lt;li&gt;Number of Questions: 60&lt;/li&gt;
&lt;li&gt;Duration: 90 minutes&lt;/li&gt;
&lt;li&gt;Delivery: Proctored online or in‑person at an AWS testing center&lt;/li&gt;
&lt;li&gt;Passing Score: Scaled score of 700 out of 1,000&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Exam Domains&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1 Cloud Concepts (28%)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Definition of cloud computing&lt;/li&gt;
&lt;li&gt;Benefits of AWS Cloud (e.g., scalability, elasticity, cost optimization)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;2 Security and Compliance (24%)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS Shared Responsibility Model&lt;/li&gt;
&lt;li&gt;Basic IAM (users, groups, roles, policies)&lt;/li&gt;
&lt;li&gt;Concepts of encryption and AWS compliance programs&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;3 Technology (36%)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Core AWS services (compute, storage, databases, networking)&lt;/li&gt;
&lt;li&gt;AWS global infrastructure (Regions, Availability Zones, Edge locations)&lt;/li&gt;
&lt;li&gt;Basic architectural principles (high availability, fault tolerance)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;4 Billing and Pricing (12%)&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;AWS pricing models (On‑Demand, Reserved, Spot)&lt;/li&gt;
&lt;li&gt;Total Cost of Ownership (TCO) and AWS Cost Explorer&lt;/li&gt;
&lt;li&gt;Billing tools (AWS Budgets, Billing Dashboard)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Course Outline &amp;amp; Study Resources&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;AWS Cloud Practitioner Essentials (Digital Course)&lt;/li&gt;
&lt;li&gt;AWS Well‑Architected Framework&lt;/li&gt;
&lt;li&gt;Hands‑On Labs (Optional but Recommended)&lt;/li&gt;
&lt;li&gt;Practice Exams &amp;amp; Flashcards&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Preparation Tips&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Set a Study Schedule&lt;/strong&gt;: Aim for 10–15 hours of study over 2–3 weeks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Use AWS Free Tier&lt;/strong&gt;: Get real‑world familiarity by spinning up and tearing down resources.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Join Study Groups&lt;/strong&gt;: Forums like AWS re:Post, DEV.to, and Reddit help clarify doubts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Review FAQs&lt;/strong&gt;: AWS service FAQs can deepen your understanding of use cases and limitations.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>dhavalmojidra</category>
      <category>awsugahm</category>
      <category>aws</category>
      <category>storage</category>
    </item>
  </channel>
</rss>
