<?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: Vishwanath </title>
    <description>The latest articles on Forem by Vishwanath  (@frozenhearth).</description>
    <link>https://forem.com/frozenhearth</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%2F291153%2Fb75f6eab-2017-4cc8-a880-c68f6d067856.jpeg</url>
      <title>Forem: Vishwanath </title>
      <link>https://forem.com/frozenhearth</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/frozenhearth"/>
    <language>en</language>
    <item>
      <title>How I finally bagged a full-time role after 4 months of job-hunting &amp; tons of rejections.</title>
      <dc:creator>Vishwanath </dc:creator>
      <pubDate>Thu, 14 May 2020 19:01:40 +0000</pubDate>
      <link>https://forem.com/frozenhearth/how-i-finally-bagged-a-full-time-role-after-4-months-of-job-hunting-tons-of-rejections-3mb1</link>
      <guid>https://forem.com/frozenhearth/how-i-finally-bagged-a-full-time-role-after-4-months-of-job-hunting-tons-of-rejections-3mb1</guid>
      <description>&lt;p&gt;Job hunting is quite a physically and emotionally exhausting affair, especially in the current job market(now with Coronavirus, it's become even crazier). I'm gonna talk about job hunting solely in the case of frontend/backend/fullstack developers/engineers.&lt;/p&gt;

&lt;p&gt;So a little &lt;strong&gt;background&lt;/strong&gt; about me:&lt;/p&gt;

&lt;h3&gt;
  
  
  Background :
&lt;/h3&gt;

&lt;p&gt;I'm a 24 year old final year Masters in CS student. We're done with theory; out of 4 semesters in 2 years of Masters, 3 semesters are theory-oriented semesters, and the last is an "internship" semester, wherein campus placements take place. For you American folks, it's the Indian equivalent of career fair(s). We were supposed to intern for 3-4 months in a company, and then submit a documentation about a project that we would supposedly work on, while interning.&lt;/p&gt;

&lt;p&gt;It was a rough period for me, as the semester started in December last year, and I quit my startup "internship" due to extreme pressure, stress, no code reviews &amp;amp; no seniors to guide us interns. We were interns for name sake, but we built production-ready applications, however with horrible coding practices. The experience did prove somewhat valuable, but back then, I didn't get the opportunity to develop good practices &amp;amp; was underpaid &amp;amp; overworked.&lt;/p&gt;

&lt;p&gt;Our college had given us roughly a couple of months as a deadline. &lt;/p&gt;

&lt;p&gt;I had to fight back the system, and skipped these campus placements, because most companies were shitty IT services mass recruiters, where most of the work was support work, and rarely did one get a chance to write code from scratch. The salary was also quite low; it has been the same since 2 decades! Majority of software companies in India are IT services firms; i.e most of the grunt work is outsourced to companies here.&lt;/p&gt;

&lt;p&gt;Not appearing for these placements meant that I was taking a big risk, as I had to somehow bag an internship or a full-time offer before the deadline. My anxiety was through the roof. Some companies even began selling paid internship certificates! You can pay around 3000 rupees &amp;amp; get a three-month internship certificate mailed to you, along with certain generic projects. The job industry is a freaking business these days.&lt;/p&gt;

&lt;p&gt;Anyways, back to the point; most of my time was spent on Angellist &amp;amp; LinkedIn, applying to tons of companies, and getting rejections left and right.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Prep :
&lt;/h3&gt;

&lt;p&gt;The software engineering interview process is flawed - on one hand, you have companies where grinding Leetcode will atleast get you through some rounds, and others where they get work done for free by you(yes, this has happened with me too, when a company asked me to build something for them, and it was very evident that they were getting free work done from me, because they were understaffed). &lt;/p&gt;

&lt;p&gt;It's even more frustrating when you're a frontend, backend or a fullstack dev, because you never know if you'll be asked CS heavy questions or JS heavy questions.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;I started the standard way&lt;/em&gt;; &lt;strong&gt;grinding Leetcode &amp;amp; Hackerrank&lt;/strong&gt;. I did get decent at it, and actually started enjoying it after a while. That's when I realized that there's something rewarding about solving puzzles. &lt;/p&gt;

&lt;p&gt;But that's when I also realized that I suck at implementing a binary tree from scratch(just an example), and even though you won't have to do any such thing when working as a dev(atleast in most cases), it's an unfortunate consequence of interview prep.&lt;/p&gt;

&lt;p&gt;Side by side, I also started spending a lot of time improving my fundamentals of Javascript &amp;amp; Object oriented programming. OOP questions are quite common in interviews, and with Javascript, it's &lt;strong&gt;&lt;em&gt;Prototypal Inheritance&lt;/em&gt;&lt;/strong&gt;, something that confuses a lot of newbies to this language.&lt;/p&gt;

&lt;p&gt;One fantastic free resource I would recommend is: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://javascript.info/"&gt;&lt;strong&gt;The Modern Javascript Tutorial&lt;/strong&gt;&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;It's an open-source resource originally written by Russian devs. &lt;br&gt;
By far, the most comprehensive resource I found on the web, along with &lt;a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript"&gt;&lt;strong&gt;MDN&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I used to spend hours reading through it, then consulting MDN, as well as watching Youtube tutorials on the same topic that I was reading.&lt;/p&gt;

&lt;p&gt;I realized that learning from different resources, rather than constraining yourself to one is a very efficient way to learn.&lt;/p&gt;

&lt;p&gt;While juggling all these, I also used to solve some problems(known as &lt;em&gt;Katas&lt;/em&gt; on &lt;a href="https://www.codewars.com/dashboard"&gt;&lt;strong&gt;Codewars&lt;/strong&gt;&lt;/a&gt;, which is another great website for practicing Javascript &amp;amp; also competing.&lt;/p&gt;

&lt;p&gt;I also had some hobby projects that I built to practice with front-end and fullstack Javascript. This freed from the extremely common &lt;strong&gt;&lt;em&gt;tutorial-hell&lt;/em&gt;&lt;/strong&gt;, a phenomenon that most learners face. &lt;/p&gt;

&lt;p&gt;After a while, stop browsing tutorials. Go build something, and then spend on Stackoverflow, either browsing questions or asking them, if you couldn't find a solution for the problems that you most certainly will face, when building everything by your own, without the help of spoon-feeding tutorials. It even forces you to think solutions for tough problems, rather than being fed the solution instantly.&lt;/p&gt;

&lt;p&gt;After all this insanity, I had finally bagged a full-time job (job title is Software Development Engineer, but I currently am a frontend engineer) in March, far beyond the deadline, but my college let it slide, as they were in awe that I got a job by myself, instead of appearing for campus placements. &lt;/p&gt;

&lt;p&gt;My interview process was a rigorous one; I was given a 7-day time window to build a front-end app in Vue(they gave Vue tasks to devs experienced in React &amp;amp; vice versa!) exactly as per the given design and specs. I was guaranteed a 1-1 interview at their HQ if I could atleast finish 90% of the specs. How much did I finish? 40% ! Yet, I got called. They told me that the task they gave me was for a senior-level dev, but they wanted to see how well I could face a challenging problem &amp;amp; they were surprised that I could finish even 40% of it. &lt;/p&gt;

&lt;p&gt;In the 1-1, I was asked everything from JS fundamentals, OOP questions, Data Structures &amp;amp; Algorithms basics (run time complexity, space time complexity &amp;amp; common DS like arrays, stacks, queues, etc), CSS fundamentals like the box-model, flexbox, positioning, and surprisingly also the event loop. I was also asked to solve Flexbox Froggy (they wanted to see how many I could solve. I could solve 23/24 (due to prior practice) within 10 minutes.)&lt;/p&gt;

&lt;p&gt;Philip Robert's &lt;a href="https://www.youtube.com/watch?v=8aGhZQkoFbQ"&gt;&lt;strong&gt;talk&lt;/strong&gt;&lt;/a&gt; on the event loop actually helped me explain this to my interviewer on the whiteboard!&lt;/p&gt;

&lt;p&gt;Nonetheless, after a 4 hour rigorous interview, I bagged the job. It was an extremely valuable learning experience.&lt;/p&gt;

&lt;p&gt;For newbies; keep your main focus on Javascript, CSS as well as Data Structures &amp;amp; Algorithms. Frameworks come and go, but fundamentals can take you very far. &lt;/p&gt;

&lt;p&gt;The biggest mistake I made in my first internship was to focus on the framework we used; Angular 5, instead of strengthening my Javascript skills.&lt;/p&gt;

&lt;p&gt;I hope I could be of some help. I know the current situation is quite challenging, but going beyond the average job applicant will put you leagues ahead. Rejections suck hard, but don't let them demotivate you. There was a period when I used to be depressed and anxious, worrying about my situation, but hardwork paid off. Keep fighting!&lt;/p&gt;

</description>
      <category>jobhunting</category>
      <category>javascript</category>
      <category>interview</category>
      <category>jobs</category>
    </item>
    <item>
      <title>How I am making up for lost time after wasting my entire undergrad.</title>
      <dc:creator>Vishwanath </dc:creator>
      <pubDate>Tue, 17 Dec 2019 06:33:35 +0000</pubDate>
      <link>https://forem.com/frozenhearth/how-i-am-making-up-for-lost-time-after-wasting-my-entire-undergrad-p3l</link>
      <guid>https://forem.com/frozenhearth/how-i-am-making-up-for-lost-time-after-wasting-my-entire-undergrad-p3l</guid>
      <description>&lt;p&gt;Hey everyone.&lt;/p&gt;

&lt;p&gt;I hope this is not another cliché motivational post.&lt;/p&gt;

&lt;p&gt;So a little about me; I'm 24, Indian, currently pursuing my Masters in CS, and have completed two full-stack internships.&lt;/p&gt;

&lt;p&gt;Before all of this, I was just another lazy, under-performing undergrad student, who loved programming and computers(still do).&lt;/p&gt;

&lt;p&gt;It all started with me screwing up my high school(known as 11th and 12th class in India). Low scores meant that I couldn't meet the cut-off criteria of top-tier engineering colleges in India. And, I had no clue about the admission process in the US/Europe.&lt;/p&gt;

&lt;p&gt;I had to make-do with studying Bachelors in CS in a no-name, mediocre college.&lt;/p&gt;

&lt;p&gt;A short summary for those have no clue about the Indian education system - it's terrible, unless you're studying in top-tier colleges. The concept of rote learning is religiously followed here, and students copy assignments from their seniors. Even projects aren't spared; there's a whole market for people selling readymade CS projects.&lt;/p&gt;

&lt;p&gt;My laziness combined with the terrible education system meant that important CS concepts weren't hammered into my brain. Not only that, but I also flunked twice during my undergrad, which meant that my 3 years of undergrad got extended to 4.5 years.&lt;/p&gt;

&lt;p&gt;During my final semester of my undergrad, I decided that I'd work on my college project on my own. I made a shitty mobile shopping website using only PHP &amp;amp; mySQL, taking inspiration from Snapdeal's(an Indian e-commerce website) design.&lt;/p&gt;

&lt;p&gt;I had zero knowledge of web development, due to which I spent two entire days without sleeping, to finish my project. &lt;/p&gt;

&lt;p&gt;I was given three entire months to finish it, but being the procrastinator that I was, I took it seriously only when the crippling anxiety of the deadline hit me. &lt;/p&gt;

&lt;p&gt;But it was all worth it, because I realized that web development is what I loved!&lt;/p&gt;

&lt;p&gt;After finishing my undergrad, I decided to pursue my Masters from the same college, because I figured it'd be near impossible for me to get a job with just a Bachelors degree from a shitty college.&lt;/p&gt;

&lt;p&gt;Oh, and I was jealous! Extremely jealous of my peers surpassing me, and getting jobs through career fairs(they're known as campus placements in India). I thought I was done for, looking onto the Masters degree to save my ass.&lt;/p&gt;

&lt;p&gt;Luckily, I had 7-8 months of free time till the admissions for the MS course started. My newfound love for web development made me research the job industry for nearly a couple of weeks. I used to spend endless hours everyday rummaging through Google, trying to figure out how feasible webdev was, and how much devs were paid.&lt;/p&gt;

&lt;p&gt;After all of this, I stumbled across Udemy, and impulsively purchased a couple of fullstack courses, which helped me fall in love with it even more.&lt;/p&gt;

&lt;p&gt;I made a couple of web-apps, and added it to my resume, which gave me a decent amount of confidence. I thought I was job-ready, and like a starry-eyed newbie, applied endlessly on Angellist and LinkedIn for months, without any success.&lt;/p&gt;

&lt;p&gt;Then my anxiety hit me. It was severe, and lasted for 3 months, all of which were hell. With regular meditation, and support from my parents, I overcame my anxiety, and I finally bagged an internship at a big company!&lt;/p&gt;

&lt;p&gt;I think almost all of you know the joy of bagging that first job or internship.&lt;/p&gt;

&lt;p&gt;Given my grades were shitty, I had to pursue my Masters in the same college. Lucky for me that the faculty allowed me to attend college while pursuing my internship.&lt;/p&gt;

&lt;p&gt;The internship was in MEAN Stack, and we later migrated to using GraphQL and Apollo. &lt;/p&gt;

&lt;p&gt;It lasted for 6 months. Like a lot of people, I started off as a noob, but unfortunately, didn't perform well in my internship, due to which my internship didn't transition to a full-time role.&lt;/p&gt;

&lt;p&gt;I was obviously dejected, but instead of sulking, I decided to focus entirely on my college for a while, and only started re-applying aggressively to jobs after my semester was done.&lt;/p&gt;

&lt;p&gt;After weeks of grueling interviews and rejections where I got my ass handed to me, I somehow got into a startup as an intern again, and boy it was chaos! &lt;/p&gt;

&lt;p&gt;Transitioning from a big company with tons of perks, to an early-stage startup with zero funding &amp;amp; benefits was rough. &lt;/p&gt;

&lt;p&gt;The tech stack they used was MERN(MySQL) + Redux, and initially, it was good.&lt;/p&gt;

&lt;p&gt;However, my senior was fired for his incompetence. Thus, the responsibility of the entire front-end lay on me.&lt;/p&gt;

&lt;p&gt;Taking on such a huge responsibility came with it's usual stress. However, it was also an excellent learning opportunity. I successfully built half of the front-end of the web portal that we were building &amp;amp; managed/maintained the entire front-end.&lt;/p&gt;

&lt;p&gt;I quit after 4 months because the stress was getting overwhelming, and it got hard to manage my MS studies. &lt;/p&gt;

&lt;p&gt;Also, there were no seniors to guide me and do code-reviews, which I feel are extremely important when you're fresh in the industry. &lt;/p&gt;

&lt;p&gt;Code-reviews help you learn best practices, and force you to write clean &amp;amp; modular code(atleast from my experience in the big company that I worked at).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;What am I doing right now?&lt;/em&gt;&lt;/strong&gt; &lt;/p&gt;

&lt;p&gt;Improving my knowledge of Data Structures &amp;amp; Algorithms by reading books written by Prof Sedgewick(Princeton), watching the MIT Open Courseware(brilliant set of videos), grinding Leetcode/Hackerrank &amp;amp; applying for jobs.&lt;/p&gt;

&lt;p&gt;I was a top-ranking student till my undergrad, but it went downhill from there. &lt;br&gt;
Failures have really humbled me, and taught me the value of time. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Here are some excellent resources &amp;amp; the plan I'm following&lt;/em&gt;&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://introcs.cs.princeton.edu/java/home/"&gt;https://introcs.cs.princeton.edu/java/home/&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Great book-site for the related book called &lt;a href="https://www.amazon.com/Computer-Science-Interdisciplinary-Robert-Sedgewick/dp/0134076427"&gt;Computer Science: An Interdisciplinary Approach&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://algs4.cs.princeton.edu/home/"&gt;https://algs4.cs.princeton.edu/home/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the next book-site that is intended as a sequel for the above first book.&lt;br&gt;
The book site is a summary of the following book: &lt;a href="https://www.amazon.com/Algorithms-4th-Robert-Sedgewick/dp/032157351X"&gt;Algorithms (4th Edition)&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The only caveat is that the above two use Java, instead of pseudo-code, which might be a hindrance for some.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://www.youtube.com/watch?v=HtSuA80QTyo&amp;amp;list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&amp;amp;index=1"&gt;https://www.youtube.com/watch?v=HtSuA80QTyo&amp;amp;list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb&amp;amp;index=1&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;MIT's Open Courseware. Excellent set of lectures.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;a href="https://teachyourselfcs.com/"&gt;https://teachyourselfcs.com/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Brilliant list of CS self-study resources. I don't follow the guide to a T, but it's an excellent guide, nonetheless. Useful for devs &amp;amp; CS students alike.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Solve the first 100 easy problems on &lt;a href="https://leetcode.com/problemset/all/?difficulty=Easy&amp;amp;listId=79h8rn6"&gt;Leetcode&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Solve all the easy DS&amp;amp;Algorithm questions on &lt;a href="https://www.hackerrank.com/domains/data-structures?badge_type=problem-solving"&gt;Hackerrank&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I also purchased a small whiteboard. Whiteboarding is extremely effective. Even though, my intention right now is not to aim for the FAANG companies, I've started practicing DS&amp;amp;Algorithms questions on my whiteboard.&lt;/p&gt;

&lt;p&gt;Breaking down a given problem statement into sub-problems, and drawing diagrams for the data structure or algorithm that you'll use for these specific problems will really help, trust me. &lt;/p&gt;

&lt;p&gt;And, don't be disheartened if you're not able to solve even the easy problems. It just takes practice, and if you're getting stuck even after that, you can re-watch or re-read material on the programming language and the DS/Algo you're using.&lt;/p&gt;

&lt;p&gt;My next plan would be to move on to medium-level problems on Leetcode and Hackerrank once I'm done with the easy problems.&lt;/p&gt;

&lt;p&gt;I hope this post was helpful, and didn't come off as "too cliché". &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;em&gt;Happy learning!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>webdev</category>
      <category>beginners</category>
      <category>motivation</category>
    </item>
  </channel>
</rss>
