<?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: rayvikram</title>
    <description>The latest articles on DEV Community by rayvikram (@rayvikram).</description>
    <link>https://dev.to/rayvikram</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%2F537089%2Fd4f890b2-bb74-46f2-9c51-07617442ece5.jpeg</url>
      <title>DEV Community: rayvikram</title>
      <link>https://dev.to/rayvikram</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rayvikram"/>
    <language>en</language>
    <item>
      <title>My Job hunting experience!</title>
      <dc:creator>rayvikram</dc:creator>
      <pubDate>Mon, 10 Jan 2022 17:11:48 +0000</pubDate>
      <link>https://dev.to/rayvikram/my-job-hunting-experience-3il7</link>
      <guid>https://dev.to/rayvikram/my-job-hunting-experience-3il7</guid>
      <description>&lt;p&gt;Hi Guys, today I want to share my Job hunting experience that lasted for 4 weeks from mid/end of october to 2nd, 3rd week of November 2021. &lt;/p&gt;

&lt;p&gt;About me:&lt;br&gt;
&lt;code&gt;I am a full stack developer skilled in Django, React, Docker, FastAPI, etc and have intermediate knowledge in NodeJs, MongoDB, NextJS, DevOps (Nginx, CI/CD, etc). I have a total of 2.5 years of experience in full stack with the above mentioned skills.&lt;/code&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Stats
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;I applied for 60-70 Jobs on various platforms &lt;/li&gt;
&lt;li&gt;I was shortlisted for 1st round in 20-22 companies&lt;/li&gt;
&lt;li&gt;After 1st round, 3-4 companies rejected me and no-show from 4-5 companies. &lt;/li&gt;
&lt;li&gt;Out of the remaining 13-14 companies (most of them were product based startup and had either or both Django/React in their stack and job profile was full stack developer), I cleared the final round in 4 companies after giving 2-3 intermediate rounds of interview.&lt;/li&gt;
&lt;li&gt;It took 5-7 days to compare the offers, and finally I accepted one based on these factors - job profile, compensation, location, tech stack, etc&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Platforms I used
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://naukri.com"&gt;https://naukri.com&lt;/a&gt; - keep your naukri profile 100% complete, buy naukri fast forward if needed, give some assessment on naukri, search and apply 10-15 jobs daily.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://tophire.co/"&gt;https://tophire.co/&lt;/a&gt; - Signup and get your profile sortlisted on this platform. The tophire is awesome, success rate is pretty high here because of the way platform is designed. Here you dont apply for companies, companies apply for you 😉.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://angel.co/"&gt;https://angel.co/&lt;/a&gt; - Create or update your profile, add all details like projects, linkedIn links etc. Search and apply for jobs based on your skills and prepare a small summary that you will send to recruiter while applying. Eg message to recruiter - &lt;code&gt;Hi X, I have 2 Years of experience in react, here is my portfolio www.example.com, I am interested in the FE position in Y company, let me know if we can have a chat. I am available on abc@gmail.com or +91 11111 22222&lt;/code&gt;. Things I love about this platform is most of them are product based startups, they offer good salary, and the salary range is also mentioned in the job details. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://geektrust.in"&gt;https://geektrust.in&lt;/a&gt; - I got couple of interviews from this portal.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href="https://www.linkedin.com/"&gt;https://www.linkedin.com/&lt;/a&gt; - Keep it updated, pass some assessments, and update your profile status to actively job-searching, etc.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Some more: &lt;a href="https://optimhire.com/"&gt;https://optimhire.com/&lt;/a&gt;, apna app, Hirect, Zigup&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Questions asked (some)
&lt;/h2&gt;

&lt;h2&gt;
  
  
  Frontend
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Move an element to the center of screen horizontally, vertically&lt;/li&gt;
&lt;li&gt;Width vs min-width&lt;/li&gt;
&lt;li&gt;IndexDB&lt;/li&gt;
&lt;li&gt;Event loop in JS&lt;/li&gt;
&lt;li&gt;HEAD vs OPTIONS network call&lt;/li&gt;
&lt;li&gt;CORS&lt;/li&gt;
&lt;li&gt;flex in css&lt;/li&gt;
&lt;li&gt;React DOM Rendering, Virtual DOM vs Real DOM&lt;/li&gt;
&lt;li&gt;Redux vs context&lt;/li&gt;
&lt;li&gt;Custom hooks, usememo&lt;/li&gt;
&lt;li&gt;async function&lt;/li&gt;
&lt;li&gt;Improve Lighthouse performance in react&lt;/li&gt;
&lt;li&gt;Promise vs async await&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Backend
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;How can we compress JSON response from backend to frontend?&lt;/li&gt;
&lt;li&gt;Python touple vs List&lt;/li&gt;
&lt;li&gt;Disadvantage of python?&lt;/li&gt;
&lt;li&gt;Multiprocessing/multithreading in python&lt;/li&gt;
&lt;li&gt;GraphQL vs REST? can we use GraphQL as REST api endpoints? Advantage with using GraphQL with REST?&lt;/li&gt;
&lt;li&gt;REST API standard terms/keywords&lt;/li&gt;
&lt;li&gt;MVT vs MVC&lt;/li&gt;
&lt;li&gt;Stateless vs stateful? cookies vs JWT?&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  DataBase
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;SQL Group By &amp;amp; Django ORM Group by&lt;/li&gt;
&lt;li&gt;Minimum Data models / Table required for an e-commerce, relations&lt;/li&gt;
&lt;li&gt;DB Normalizations&lt;/li&gt;
&lt;li&gt;ACID functionality &lt;/li&gt;
&lt;li&gt;SQL vs No-SQL&lt;/li&gt;
&lt;li&gt;Postgres vs Mongo&lt;/li&gt;
&lt;li&gt;Indexing vs composite indexing? Order of fields in composite indexing?&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  System Design Questions / DevOps
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;High lvl block diagram of a file converter system eg: pdf to image, how can we make it scalable and performant, fail safe, etc.&lt;/li&gt;
&lt;li&gt;Why Micoservices? Challenges in Microservices?&lt;/li&gt;
&lt;li&gt;What is 775 permission?&lt;/li&gt;
&lt;li&gt;Command for memory / space utilization in linux&lt;/li&gt;
&lt;li&gt;How load balancer works? eg?&lt;/li&gt;
&lt;li&gt;Vertical vs Horizontal Scaling?&lt;/li&gt;
&lt;li&gt;Terms like - Deamon, Kernal&lt;/li&gt;
&lt;li&gt;Send file to remote server using ssh?&lt;/li&gt;
&lt;li&gt;What this will you consider before selecting a new tech in your team? Eg Django vs FastApI or React vs Vue&lt;/li&gt;
&lt;li&gt;Use of refresh token in auth? What if we hack refresh token of a user?&lt;/li&gt;
&lt;li&gt;Design a pubsub system with python/js&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Coding
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Given an array of integers, return a new array such that each element at index i of the new array is the product of all the numbers in the original array except the one at i.&lt;br&gt;
For example, if our input was [1, 2, 3, 4, 5], the expected output would be [120, 60, 40, 30, 24]. If our input was [3, 2, 1], the expected output would be [2, 3, 6]&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Given a list of numbers and a number k, return whether any two numbers from the list add up to k.&lt;br&gt;
For example, given [10, 15, 3, 7] and k of 17, return true since 10 + 7 is 17. &lt;br&gt;
This should be done in 1 pass.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Many more, I dont remember. As I was applying for only full stack, coding was very easy.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  How to crack job ?
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;Get shortlisted for interview: Creating an awesome resume is the only thing in your control that you can do to get shortlisted. Most recruiter will spent 10-60 seconds at your resume to shortlist so my suggestion would be - add only important things like what impact you did in your current job, what problem you solved, list your linked-in, stackoverflow, github accounts in resume, possibly host your websites on heroku, github-pages, etc and give a live link in the resume. This shows your dedication towards coding. And mention some acheivements, list of all your personal projects. For a 2 years of exp, 1 page resume is more than enough i think.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Clear the Interview: Most interviewers ask core questions from any topics. So you can google &lt;code&gt;Top 50 Question in react/Django/Frontend/FullStack/Backend/DataBase/etc&lt;/code&gt; and prepare them. Thats it, it will cover around 80% questions. And before attending an interview, try to do some research on the company, what they do, tech stack, etc and after the interview ask some question like what is the team structure? etc. Note these down. These will help you in comparing these companies. &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Tips: Dont settle just after getting 1,2 job offers, ask recruiter for some more time. If you have some better offer from Y company and you want to join X company. Be honest, ask the recruiter of X company that you have a good offer and re-negotiate your compensation. (We can re-negotiate after accepting an offer and most of the recruiter are aware of this).&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Questions? Feel free to ask in the comments. Thanks for reading!&lt;/p&gt;

</description>
      <category>career</category>
      <category>webdev</category>
      <category>programming</category>
    </item>
    <item>
      <title>Hoppscotch • Best postman alternative</title>
      <dc:creator>rayvikram</dc:creator>
      <pubDate>Wed, 23 Jun 2021 16:45:46 +0000</pubDate>
      <link>https://dev.to/rayvikram/hoppscotch-best-postman-alternative-37o9</link>
      <guid>https://dev.to/rayvikram/hoppscotch-best-postman-alternative-37o9</guid>
      <description>&lt;p&gt;Hoppscotch • Open source API development ecosystem - Helps you create requests faster, saving precious time on development. &lt;a href="https://hoppscotch.io/"&gt;https://hoppscotch.io/&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;It a lightweight and doesn't consume much RAM and CPU as postman. &lt;/p&gt;

</description>
      <category>opensource</category>
    </item>
    <item>
      <title>Pyenv at a glance</title>
      <dc:creator>rayvikram</dc:creator>
      <pubDate>Thu, 24 Dec 2020 16:09:36 +0000</pubDate>
      <link>https://dev.to/rayvikram/pyenv-at-a-glance-5hhl</link>
      <guid>https://dev.to/rayvikram/pyenv-at-a-glance-5hhl</guid>
      <description>&lt;h1&gt;
  
  
  What is pyenv?
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;Want to have multiple python version ( 2.2.x, 2.3.x, 3.5.x, 3.5.x, etc) without messing with your laptop? Manage virtual env easily? Pyenv is your tool.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Installing and configuring pyenv
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;a href="https://realpython.com/intro-to-pyenv/#installing-pyenv"&gt;https://realpython.com/intro-to-pyenv/#installing-pyenv&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Some basic commands
&lt;/h1&gt;

&lt;h2&gt;
  
  
  pyenv python version control commands
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;pyenv install 3.6.0&lt;/code&gt; - installs python 3.6.0 in pyenv &lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyenv install --list&lt;/code&gt; or &lt;code&gt;pyenv install --list | grep 3.6&lt;/code&gt;  view all python version &lt;code&gt;3.6.x&lt;/code&gt; that you can install &lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyenv global 3.6.0&lt;/code&gt; - activates/enables 3.6.0 version of python&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;python -V&lt;/code&gt; or &lt;code&gt;pyenv version -V&lt;/code&gt; to view enabled python &lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyenv versions&lt;/code&gt; - list all the python available in pyenv&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyenv global system&lt;/code&gt; - will undo the activated python and switch to the python install in your machine/system&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;pyenv local 2.7.18&lt;/code&gt; - will create a .python-version file. We use this command to define folder/project specific python. Basically if you are in this folder, &lt;code&gt;python&lt;/code&gt; command  will be resolved to &lt;code&gt;python 2.7.18&lt;/code&gt;. You can also verify it by &lt;code&gt;pyenv versions&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;We can set python version by 3 ways &lt;code&gt;pyenv shell 3.8&lt;/code&gt;, &lt;code&gt;pyenv local 2.7.18&lt;/code&gt; and &lt;code&gt;pyenv global 3.5.9&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  pyenv virtualenv commands
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;pyenv virtualenv &amp;lt;python_version&amp;gt; &amp;lt;env_name&amp;gt;&lt;/code&gt; - eg &lt;code&gt;pyenv virtualenv 3.5.9 my_env&lt;/code&gt; - will creates a python env with &lt;code&gt;my_env&lt;/code&gt; name&lt;/li&gt;
&lt;li&gt;activate this newly created env - &lt;code&gt;pyenv activate my_env&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;if you want to automatically activate this env after navigating to a project folder if do &lt;code&gt;pyenv virtualenv 3.5.9 my_env&lt;/code&gt; &amp;gt; &lt;code&gt;navigate to project&lt;/code&gt; &amp;gt; &lt;code&gt;pyenv local my_env&lt;/code&gt; &amp;gt; will create &lt;code&gt;.python-version&lt;/code&gt; file with content &lt;code&gt;my_env&lt;/code&gt; so that &lt;code&gt;pyenv-virtualenv&lt;/code&gt; plugin will know that you have already an env for this folder and activates this. Navigating out of this folder will deactivate the env&lt;/li&gt;
&lt;li&gt;It also supports multiple env at once. &lt;code&gt;pyenv local env1 env2&lt;/code&gt; - command will try to be resolved in env2 if failed then it will use env2 &lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  conclusion
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;You have multiple python versions&lt;/li&gt;
&lt;li&gt;No need to activate env for projects manually&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>python</category>
    </item>
  </channel>
</rss>
