<?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>DEV Community: Alpesh Borekar</title>
    <description>The latest articles on DEV Community by Alpesh Borekar (@asb_it).</description>
    <link>https://dev.to/asb_it</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.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3999243%2F9334872c-4792-4a00-bf4e-5219acad02e7.png</url>
      <title>DEV Community: Alpesh Borekar</title>
      <link>https://dev.to/asb_it</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/asb_it"/>
    <language>en</language>
    <item>
      <title>My First Internship: Still Searching, Still Building</title>
      <dc:creator>Alpesh Borekar</dc:creator>
      <pubDate>Thu, 25 Jun 2026 08:48:52 +0000</pubDate>
      <link>https://dev.to/asb_it/my-first-internship-still-searching-still-building-1bn1</link>
      <guid>https://dev.to/asb_it/my-first-internship-still-searching-still-building-1bn1</guid>
      <description>&lt;h1&gt;
  
  
  My First Internship: Still Searching, Still Building
&lt;/h1&gt;

&lt;p&gt;There are days when I wonder if I'm doing something wrong.&lt;/p&gt;

&lt;p&gt;Over the past year, I've spent thousands of hours trying to earn my first software engineering internship.&lt;/p&gt;

&lt;p&gt;I didn't just apply through job portals.&lt;/p&gt;

&lt;p&gt;I solved DSA problems.&lt;br&gt;
Prepared for technical interviews.&lt;br&gt;
Studied backend fundamentals.&lt;br&gt;
Built projects.&lt;br&gt;
Earned certifications.&lt;br&gt;
Rewrote my resume countless times.&lt;br&gt;
Recorded project walkthroughs.&lt;br&gt;
Sent hundreds of cold emails.&lt;br&gt;
Asked for referrals.&lt;br&gt;
Applied to startups and large companies alike.&lt;/p&gt;

&lt;p&gt;Some applications were rejected immediately.&lt;/p&gt;

&lt;p&gt;Some never received a response.&lt;/p&gt;

&lt;p&gt;A few reached the interview stage.&lt;/p&gt;

&lt;p&gt;Those interviews taught me far more than any online course.&lt;/p&gt;




&lt;p&gt;One interview changed how I looked at software engineering.&lt;/p&gt;

&lt;p&gt;The interviewer liked my backend knowledge and asked about one of my projects. Then they asked a simple question:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Do you have real users?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;I didn't.&lt;/p&gt;

&lt;p&gt;I had built projects that worked.&lt;/p&gt;

&lt;p&gt;But they were built for learning, not for people.&lt;/p&gt;

&lt;p&gt;That question stayed with me for days.&lt;/p&gt;




&lt;p&gt;Soon after, I took the AZ-900 certification exam.&lt;/p&gt;

&lt;p&gt;I failed.&lt;/p&gt;

&lt;p&gt;It wasn't because the exam was impossible.&lt;/p&gt;

&lt;p&gt;I simply wasn't prepared enough.&lt;/p&gt;

&lt;p&gt;Walking out after spending my own money and seeing the result was difficult.&lt;/p&gt;

&lt;p&gt;For a while, I questioned whether I was good enough for this career at all.&lt;/p&gt;

&lt;p&gt;But after a few days, I stopped thinking about the failure and started thinking about what I could improve.&lt;/p&gt;




&lt;p&gt;Instead of jumping into another tutorial, I decided to finish something properly.&lt;/p&gt;

&lt;p&gt;That project became &lt;strong&gt;CloudStash&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;CloudStash isn't another CRUD application.&lt;/p&gt;

&lt;p&gt;I wanted to understand how production-style backend systems actually work.&lt;/p&gt;

&lt;p&gt;So I built a cloud file storage platform using:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js + TypeScript&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;Redis&lt;/li&gt;
&lt;li&gt;BullMQ workers&lt;/li&gt;
&lt;li&gt;JWT authentication&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Object storage&lt;/li&gt;
&lt;li&gt;Background processing&lt;/li&gt;
&lt;li&gt;Real-time upload progress&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Ironically, writing the features wasn't the hardest part.&lt;/p&gt;

&lt;p&gt;Deployment was.&lt;/p&gt;

&lt;p&gt;Connecting multiple services, configuring Docker, fixing environment variables, debugging Redis connections, handling uploads in production, and making everything work together took much longer than I expected.&lt;/p&gt;

&lt;p&gt;Eventually...&lt;/p&gt;

&lt;p&gt;It finally went live.&lt;/p&gt;




&lt;p&gt;I expected users.&lt;/p&gt;

&lt;p&gt;Instead, almost nobody showed up.&lt;/p&gt;

&lt;p&gt;At first, that felt like another failure.&lt;/p&gt;

&lt;p&gt;Then I realized something important.&lt;/p&gt;

&lt;p&gt;Building software and getting people to use software are two completely different skills.&lt;/p&gt;

&lt;p&gt;Learning to code is only one part of the journey.&lt;/p&gt;

&lt;p&gt;Learning distribution, usability, documentation, feedback, and trust is another challenge entirely.&lt;/p&gt;




&lt;p&gt;I'm still looking for my first internship.&lt;/p&gt;

&lt;p&gt;I still receive rejection emails.&lt;/p&gt;

&lt;p&gt;I still get nervous before interviews.&lt;/p&gt;

&lt;p&gt;But my goal has changed.&lt;/p&gt;

&lt;p&gt;I'm no longer building projects only to fill my GitHub profile.&lt;/p&gt;

&lt;p&gt;I'm trying to build software that solves real problems for real people.&lt;/p&gt;

&lt;p&gt;Maybe CloudStash won't become the next Dropbox.&lt;/p&gt;

&lt;p&gt;That's okay.&lt;/p&gt;

&lt;p&gt;It has already taught me more about backend engineering than any tutorial ever could.&lt;/p&gt;




&lt;p&gt;If you're also searching for your first internship, remember this:&lt;/p&gt;

&lt;p&gt;Don't let rejection convince you that you're not improving.&lt;/p&gt;

&lt;p&gt;Every interview reveals something you didn't know.&lt;/p&gt;

&lt;p&gt;Every deployment teaches a lesson.&lt;/p&gt;

&lt;p&gt;Every bug makes you a better engineer.&lt;/p&gt;

&lt;p&gt;And eventually, one opportunity is all it takes.&lt;/p&gt;

&lt;p&gt;I'm still waiting for that opportunity.&lt;/p&gt;

&lt;p&gt;Until then...&lt;/p&gt;

&lt;p&gt;I'll keep building.&lt;/p&gt;

&lt;p&gt;I'll keep learning.&lt;/p&gt;

&lt;p&gt;And I'll keep showing up.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;I'd love to hear from other developers.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;What helped you land your first internship or software engineering job?&lt;/p&gt;

&lt;p&gt;Was it open source, networking, a side project, referrals, or something else?&lt;/p&gt;

</description>
      <category>backend</category>
      <category>node</category>
      <category>career</category>
      <category>webdev</category>
    </item>
    <item>
      <title>Building CloudStash: A production-style cloud storage system with Node.js, PostgreSQL, Redis &amp; BullMQ</title>
      <dc:creator>Alpesh Borekar</dc:creator>
      <pubDate>Thu, 25 Jun 2026 08:30:49 +0000</pubDate>
      <link>https://dev.to/asb_it/building-cloudstash-a-production-style-cloud-storage-system-with-nodejs-postgresql-redis--23mb</link>
      <guid>https://dev.to/asb_it/building-cloudstash-a-production-style-cloud-storage-system-with-nodejs-postgresql-redis--23mb</guid>
      <description>&lt;h1&gt;
  
  
  Building CloudStash
&lt;/h1&gt;

&lt;p&gt;Over the past few weeks I wanted to move beyond CRUD applications and understand how production-style backend systems are built.&lt;/p&gt;

&lt;p&gt;That led me to build &lt;strong&gt;CloudStash&lt;/strong&gt;, a cloud storage application focused on backend architecture rather than just file uploads.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;Redis&lt;/li&gt;
&lt;li&gt;BullMQ&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;Vite&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JWT Authentication&lt;/li&gt;
&lt;li&gt;Secure file uploads &amp;amp; downloads&lt;/li&gt;
&lt;li&gt;PostgreSQL metadata storage&lt;/li&gt;
&lt;li&gt;Redis metadata caching&lt;/li&gt;
&lt;li&gt;Background workers using BullMQ&lt;/li&gt;
&lt;li&gt;WebSocket upload progress&lt;/li&gt;
&lt;li&gt;Dockerized services&lt;/li&gt;
&lt;li&gt;Hosted on Render + Vercel&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What I learned
&lt;/h2&gt;

&lt;p&gt;Building the features wasn't the hardest part.&lt;/p&gt;

&lt;p&gt;The biggest challenges were:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;connecting Redis, PostgreSQL and workers&lt;/li&gt;
&lt;li&gt;deployment across multiple services&lt;/li&gt;
&lt;li&gt;environment configuration&lt;/li&gt;
&lt;li&gt;debugging production issues&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This project helped me understand concepts that don't usually appear in small CRUD applications.&lt;/p&gt;




&lt;h2&gt;
  
  
  GitHub
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/alpeshborekar/cloudstash" rel="noopener noreferrer"&gt;https://github.com/alpeshborekar/cloudstash&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Live Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://cloudstash-frontend.vercel.app" rel="noopener noreferrer"&gt;https://cloudstash-frontend.vercel.app&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;I'd love to hear feedback from backend engineers.&lt;/p&gt;

&lt;p&gt;What would you improve in this architecture?&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>node</category>
      <category>productivity</category>
      <category>discuss</category>
    </item>
    <item>
      <title>How I Built CloudStash: A Cloud File Storage System with Node.js, PostgreSQL, Redis, and BullMQ</title>
      <dc:creator>Alpesh Borekar</dc:creator>
      <pubDate>Tue, 23 Jun 2026 18:14:11 +0000</pubDate>
      <link>https://dev.to/asb_it/how-i-built-cloudstash-a-cloud-file-storage-system-with-nodejs-postgresql-redis-and-bullmq-1i4d</link>
      <guid>https://dev.to/asb_it/how-i-built-cloudstash-a-cloud-file-storage-system-with-nodejs-postgresql-redis-and-bullmq-1i4d</guid>
      <description>&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4mxd4l8v2ivyzqa2771e.png" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4mxd4l8v2ivyzqa2771e.png" alt=" " width="762" height="917"&gt;&lt;/a&gt;&lt;br&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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fikxxqgwintmmdufmddad.png" 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.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fikxxqgwintmmdufmddad.png" alt=" " width="799" height="404"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h1&gt;
  
  
  How I Built CloudStash
&lt;/h1&gt;

&lt;p&gt;After several weeks of building and deployment debugging, I finally launched CloudStash, a cloud file storage application built to learn how production-style backend systems work beyond basic CRUD applications.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why I Built It
&lt;/h2&gt;

&lt;p&gt;Most tutorial projects stop after implementing CRUD APIs.&lt;/p&gt;

&lt;p&gt;I wanted to understand how real systems handle:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;File uploads&lt;/li&gt;
&lt;li&gt;Background processing&lt;/li&gt;
&lt;li&gt;Object storage&lt;/li&gt;
&lt;li&gt;Caching&lt;/li&gt;
&lt;li&gt;Authentication&lt;/li&gt;
&lt;li&gt;Deployment&lt;/li&gt;
&lt;li&gt;Real-time updates&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;CloudStash became my learning project for these concepts.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tech Stack
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;PostgreSQL&lt;/li&gt;
&lt;li&gt;Redis&lt;/li&gt;
&lt;li&gt;BullMQ&lt;/li&gt;
&lt;li&gt;Docker&lt;/li&gt;
&lt;li&gt;Render&lt;/li&gt;
&lt;li&gt;Vercel&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Features
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;JWT Authentication&lt;/li&gt;
&lt;li&gt;File Uploads and Downloads&lt;/li&gt;
&lt;li&gt;PostgreSQL Metadata Storage&lt;/li&gt;
&lt;li&gt;Redis Caching Layer&lt;/li&gt;
&lt;li&gt;Background Workers with BullMQ&lt;/li&gt;
&lt;li&gt;Real-Time Upload Progress&lt;/li&gt;
&lt;li&gt;Dockerized Deployment&lt;/li&gt;
&lt;li&gt;Object Storage Support&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Architecture
&lt;/h2&gt;

&lt;p&gt;[Insert your architecture diagram here]&lt;/p&gt;

&lt;p&gt;The system separates metadata from file storage and uses workers for background processing.&lt;/p&gt;

&lt;h2&gt;
  
  
  Biggest Challenges
&lt;/h2&gt;

&lt;p&gt;The hardest part wasn't writing APIs.&lt;/p&gt;

&lt;p&gt;It was:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Deployment issues&lt;/li&gt;
&lt;li&gt;Environment variables&lt;/li&gt;
&lt;li&gt;Connecting multiple services together&lt;/li&gt;
&lt;li&gt;Handling production configuration&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I spent more time debugging deployment than writing features.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Learned
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Redis is useful beyond caching&lt;/li&gt;
&lt;li&gt;Background jobs simplify heavy processing&lt;/li&gt;
&lt;li&gt;Separating metadata from blobs improves design&lt;/li&gt;
&lt;li&gt;Production deployments are very different from local development&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What's Next
&lt;/h2&gt;

&lt;p&gt;Planned improvements:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;File sharing links&lt;/li&gt;
&lt;li&gt;Folder support&lt;/li&gt;
&lt;li&gt;Storage analytics&lt;/li&gt;
&lt;li&gt;Multipart uploads&lt;/li&gt;
&lt;li&gt;Better monitoring&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;p&gt;Demo:&lt;br&gt;
&lt;a href="https://cloudstash-frontend.vercel.app" rel="noopener noreferrer"&gt;https://cloudstash-frontend.vercel.app&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;GitHub:&lt;br&gt;
&lt;a href="https://github.com/alpeshborekar/cloudstash" rel="noopener noreferrer"&gt;https://github.com/alpeshborekar/cloudstash&lt;/a&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>productivity</category>
      <category>architecture</category>
      <category>cloud</category>
    </item>
  </channel>
</rss>
