I am a VERY (and I stress on VERY) average Software Engineer. I started LCing on and off in August and I did manage to get a good offer (by my standards) now. My CTC was ~9, now it's 23 + ESOPs. I know it's not a big deal and it's VERY little considering LC standard and my experience (4.5 yoe), but I'm definitely glad it happened. The main reason I'm glad is because I got rejected at a lot of places - Amazon, Zynga, Goldman Sachs, Udaan, Gojek etc. So it started feeling like things wouldn't work out for me, but somehow it did. So keep your hopes up and grind on. May the force be with you guys!
Edit 1:
Just wanted to add a little bit about my profile. I did my undergrad in CS, and my profile isn't too bad. I have done GSoC etc during my undergrad. Also, since my undergrad was in CS, I didn't have to spent time understanding what the data structures was or how it worked.
Now, I thought I'll also explain how I applied. It was mostly through LinkedIn, keeping the "open for opportunities" definitely helps.
Amazon, Goldman Sachs, Udaan, OCI, Arcesium, Gojek, BrowserStack and recruiters from some other companies had contacted me through that. For some companies like Yahoo, Informatica, Cisco, Freshdesk etc directly applying on the careers page helped.
Everyday you should keep aside sometime (Say 1 hour so) just to apply for jobs. You can also use sites like angel.co if you are open to working at startups (many of them pay well and the work is also pretty good.)
Edit 2 :
LC - 141 (E-66/M-73/H-2)
The main reason I got rejected at these many places is mainly because I was applying at places more instead of actually studying. My LC count is a clear indicator of that. Initially I was doing poorly in the DS-Algo round itself, but soon that got better. Then I started getting rejected at System Design round - Goldman Sachs, Zynga, Jio (though they took me to next round, I feel I got rejected because of System Design). A bit by bit, I started improving there as well.
TBH, I'm pretty ok at general communication. I'm not the sterotyped nerd who cannot communicate, so I didn't have to work on my skills there but if you feel you lack some stuff there, please improve upon that also.
Also, just adding the list of (popular - I'm not adding random startups) places I got rejected just so that people understand things do not get done in one go.
Also, there are many places which ghosted after initial conversation also. So, just keep your spirits high. You can do it!