Advise needed regarding various aspects of Switching
Anonymous User
376

Hi All,

I dont know from where to start I have so many things on my mind for which I need some sort of advise and clarification. I know this can be easily considered as misusing of this platform but trust me I have tried and researched on every doubt that I am going to ask. I didn't get satisfied by the answers. So here I am trying my luck out on this platform. Actually I have gone through the discuss section and this community is so helpful to everyone, hence this gave me an idea to try out for myself. So here it goes.

A little background about me - I am a TIER-3 college graduate in CSE with good marks. Currently I am working in a service based company since 2+ years. I feel kind of stuck here, which now I know that most people working in IT do after some point of time. At first Engineering was not my choice at all. I was just another kid who bore the burden of their parent's expectations. So I did everything according to the rulebook(Rulebook of how to be the BEST child - By every parent), but then I lost interest (or maybe I was made to do so because, Damn! Rulebook!). I got interested in some other field (and by some other field I mean GOVT. jobs - Story of every Indian young adult (Sorry for generalizing, but.. )). So after approx one year of therapy here I am. I still don't know what is right for me but I know this that I really want to give this field a try.

Now, the current story - Current scenario is that I am interested in staying in IT and go on to join some product based company( this is what Internet taught me that after service based you switch to product based). Also this might seem like that again I am going by the Rulebook but the difference is now it's mine only. I dont know why I clarified this but anyways back to the topic. The main thing that causes frustration in me here is pay and the work and also the toxic work culture. It seems like my growth graph in career is going down everyday (which I know is again a thing that happens to most of people in service based). I started thinking of switching but till now I am unable to and every single day that passes leaves me making feel worse.

Since I changed my mind so many times in the past I really forgot and also did not understand DSA. During my college I never focussed on DSA and now I know what a bad decision it was, but anyways all in the past. I started to get familiar with them again but there is this mental resistance that I face now. A few months back I just started with Arrays and Strings and all was going fine until I heard my friends switching, my colleagues switching. It feels so bad that I am just starting and they are already there and also feels like the more time passes the more difficult will it become to switch.

I will stop ranting now and will get to the point. So here are the things that keeps me awake at night and paralyses me during the day -

  1. I am not so bad at logic building, it's just that since I started after so long I am little rusty and hence logic comes to me in some time or with some help. The doubt here is that is it bad practice if you are taking some help? Will it not help? Also I feel like if I take some help it will save my time and I will be able to do many questions by seeing the pattern (I am good at observing patterns also). However many of my friends and also some people, it feels like logic comes to them naturally without any external help. So to such people, what is it? Is it that you have done so many questions you recognise the pattern or did the logic came to you naturally when you started?

  2. Time. This is my main concern. Since I have already spent 2+ years in IT without switching I feel like the time will pass on. I mean suppose I get comfortable with DSA after a year of practice then my experience will become 3+ year and then again I will be at the disadvantage since for 3+ years the companies have different set of expecations(basically system design (It sounds so scary!!) and other thing). This thought mostly keeps me paralyzed, because every person that I have met and discussed this with, warned me about the same thing and it kind of created a panic in me (and panic and hurry just shuts off my mind, I am not even able to solve Easy questions that I once solved). So to the experienced people, I would like to ask how to move forward with this fact and is this even a fact or just a hoax? And if this is a fact, then anybody who dealt this with how did you do it?

  3. Job Profile and Interview. This is another thing that I am so confused about. So most of the job profiles mentions things like Big data, Hadoop, Spring, Microservices, Webservices and many other fancy terms along with a small mention of DSA. My doubt here is during the interview, do the interviewer asks questions related to things mentioned in job profile or does the interview only revolves around DSA and basic language questions (here I mean that if I am choosing JAVA, so core JAVA only) ? Also there is a big confusion related to companies, there are so many companies. From the market I got to know that there are Tiers associated with companies too. Like service based are last tier then comes companies like OYO, MMT, PayTm etc and last FAANG. So my question here is how achievable are second tier companies?
    Also one more doubt, during interviews suppose there comes a linkedlist question so do you use LinkedList class that is already in the package or do you write your own implementation first and then solve the question? For example if interviewer asks you a question to merge linked lists so how do you take input? Do you use already defined methods in the class there or do you write your own implementation and then take input through it? If latter one is the case, is it not waste of time or is it considered another parameter by which interviewer judge your skills? This applies for all other ADTs too.

  4. Preparation and when do I start to apply? So as I already told above I am not so bad in logic but needs some time but when I see the syllabus structure of DSA, it feels so overwhelming. There are so many questions and so many algorithms and DS. How to prioritize them in regards to the preparation? What amount of questions are just good enough to go. Because I feel like if I just keep on doing every question then the Time will pass but also I feel like one should do enough questions to get familiarized. So my question here is how to prioritize, what to prioritize and when to start applying for the companies. Right now I have done some basic Array and String questions only. How long and what should I practice for before applying?

  5. Consistency and Motivation. I know it seems such a generic thing to ask, but how do you do it? When people around you are moving at such a fast pace(I know one shouldn't compare but its so human,no?), your office environment just totally sucks and doesn't give you enough time to study, when everything seems like it is going downhill and that frustration and negative energy. How do you fight it? I have tried, and I am still trying, this post here is the proof of how frustrated and stuck I am right now but still have hope in me, but how do you just solve problems consistently when so much goes on your mind?

So these are all the things that I want to get some advise on. From the discuss section I got to know that this community is so rich and diverse, hence this felt like a right platform for this.

P.S. - I know it felt like such a long thing to read. Thanks for bearing this and if you have any sort of advise or feedback, I would appreciate it!

Comments (1)