Career Advice

Hi Ryunosuke,
This is going to be in detail so please bear with me.

1. The term data science is currently been used to mean a lot of things ranging from data analysis to machine learning to god knows what. The whole structural mess can be simply be divided into a couple of layers, at the bottom most layer is the data storage and efficient retrieval, then on top of that you have the data analysis layer, here this layer is divided sideways with one side using AI based methods(machine learning being one of them) among other things and the other side using tools like SAS, SPSS, R Language to analyses the data to find what they want. At the very top is the presentation layer with tools like SAS Dashboard, Virtualization techniques among other things.
1.1 Said that, one may ask are the two sections of the middle layer completely separate? no, here the tools like SAS ,SPSS are geared towards an end goal of helping business customers make informed decision and it is generally branded as Business Intelligence field. This field may or mayn’t use AI based methods to drive their analysis works, but is AI a must? Answer is again no. Once you go into business intelligence field you will be dealing with completely different(may not be 100% but may be 60%) set of problems. Here the terms AI(Machine Learning) is used liberally but in reality the use of AI algorithms are very limited. For example, if you want to analyses a data set from a theater and find out the most sold seat and project a higher price for that seat in future, then it is entirely possible to so do without using any AI methods(in-fact you can do it with SQL alone if the data set is in a database) but now-a-days these simple analysis has been labeled as machine learning, is it possible to do the same with Bayesian reasoning, yes it is but is it necessary? no.
1.2 The reason I mentioned these is because, the data science is thrown around in such a way that it means anything and everything but as I said before there are a lot of things that just gets rolled over, so I want you to take some time to understand what is what and where you are going.

2. You said you have difficulty with mathematics, if you don’t mind me asking, is your troubles with mathematics because you are unable to understand why certain steps are implemented or because of some-other reason? I am asking this because I have this problem, I don’t understand rules without fully understand why, for example everyone knows anything divided by zero is infinity but not many knows why, in my case if don’t know why, I will never understand it. If you are in this kind of situation then I suggest you start with very basics, take calculus I for dummies book and progress to calculus II and progress from there, take this with the next point.
2.1 The need to understand algebra, calculus is not universal but you need to understand statistics, the design of algorithms will definitely need a good understand of calculus among other things but if you are going in the line of business intelligence then you need to know statistics and no need to bother with others(in 99% of the cases somethings even 100%). If you are going to learn statistics and have no idea where to start get books on statistics that are targeted towards life science professionals and towards BI professionals. The life science focus books will be very detailed with good explanation of why and BI focused books will explain what and where and when and you will be able to use them immediately.
2.3 I have never used any of these online courses and so I don’t know about them. I prefer books rather then online content to get my answers to my problems, I suggest you do the same, this way you will understand all the related issues and get a better understanding, it takes time but in the end you will be well informed. This is entirely my view, you are free to choose what works best for you.

3. I don’t know anything about civil thingies you did but what caught my attention is the "International Relations and Strategic Security", this is a field that had, has, and will have tremendous potential for BI use, the amount of data that is generated is staggering and fishing useful knowledge is very much in need, there are think tanks who will pay your weight in gold if you can do a good job.
3.1 I would suggest you to find-out how to add knowledge that will complement what you already have, you have knowledge in a field that need to make good decision all the times but also have problem with excess data both of which can be solved by BI or version of it. The need to have AI knowledge to do a good job is not supported by any thing that I know so far.

If you need any explanation in anything I said, post back and I will see what I can do.

Hope this helps

Regards
 
Thank you for the detailed reply. A few things that I would like to add. I had a course on Data Warehousing in my masters so have an idea about BI and ETL ops.
When it comes to Mathematics, I would say my low interest is mainly due to lack of understanding of concepts. If and when I do, I rather enjoy it, as I mentioned earlier, I spent late nights solving Complex number problems from Khan Academy because I could finally understand the concept and also see the bigger picture where it all would fit, especially Network Analysis for Electronic Circuits., where I was trying to design my own OpAmp. I'm the person who has the quirk of remembering vehicle numberplates by finding out some additive/multiplicative or divisive relation between number pairs.
Strategic Security is an area of my core interest since childhood, more so now as most of my siblings are in Army or Navy. At the end of the day, I intend to start my own company/consultation in the field of ML/AI driven Intelligence gathering and analysis and hope to start off from Image intelligence as satellite data isn't that hard to source and back in Navteq, my overarching domain was GIS.
Maybe there are few flaws in my idea but I know it's a good one and I'm ready to work for it. After getting my bearings straight in Computer Science and AI domain, I intend to further study in Strategic Security domain too.
If I can have my own small IHS Jane or Stratfor, I'll be a happy and content man.
 
Hi Ryunosuke,

1. If you are having problems with mathematics due to concepts, then as far as I know the only way is to go back to basics, I once read a book that kinda explained how each of the theorems was first constructed and the thought process behind it(I forgot its name but I believe it was a leather bound book), maybe you can find books or material like that to help you.

2. Regarding usage of AI in analysis field, I believe you have been up-sold on the effectiveness of the AI systems. With the current(and in the foreseeable future too) technology it is not possible to answer the question "why", as you may be aware, why is recursive with open possibilities which in computer terms is unsolvable. But it doesn't mean its not useful.
2.1 The current implementations(almost all of the of pre-packaged ones) of machine learning are not suited in your use-case. So if you want to adapt AI functionality in your system then you need to build up your own framework and methods. Machine learning or the proper term artificial neural network is actually a subset of AI and your requirements spans almost the entire field of AI in which case you will be better off starting with foundations of AI and even then I am not sure if the end result with satisfy your requirements.
2.2 I hope you understand the limitations of the current systems, because currently youtube videos and online blogs talk as if machine learning is a magic ward which anyone can swing and solve all the problems, it doesn't work that way and in your case business intelligence tools and techniques might help you better.

Regards
 
Right now the main issue for me isn't doing some thing, or lack of resources for that thing. Main challenge is to be sure that what I'm doing or about to do, will it align with my overarching aim and objective or not. Till now I have been of the notion that Data Sciences stream would fit into my immediate and future goals; immediate being bridging of the wage gap to an extent, when compared a Software Developer to a fresher Data Scientist and future one being able to spin off own venture with experience gained from Data Science and Data Analytics domain. If doing courses in ML isn't going to cut it then what will?
 
1. I don't think you will join as a data scientist fresh out of university, most probably you will be joining as junior data analyst or at the most data analyst and with couple of years of experience you can become data scientist.
1.1 Just like software engineer is a generic term, data analyst and data scientist is a generic term, there are countless specialization within it, based on tools you get specilized in, you growth potential also changes so be aware of it.
1.2 From my understanding the difference in stating salary of a software programmer and junior data analyst is not much so take that into account. I would suggest you to look into job sites to understand what is the current trend.
1.3 Doing a specialized course in machine learning will help in understanding it but in order to specialize in it you need to gain a deeper understanding of other things like I said in my previous posts(first post)
1.4 The experience you gain in working in the field of data science may or may not help you in your future as pointed out in point 1.1, if you want to gain experience that will help you in future then you need to prepare now and then take up jobs that will help you. In my understanding the easiest way will be to search for jobs in the field you want to operate in future and then look for what they are asking and take it from there.

Regards
 
AS of now I stand nowhere in terms of technical experience or expertise. In order to rectify that, I strongly believe that I need professional re-skilling and up-skilling thus opting for further studies abroad. I have the option to select my own subjects for the course so will be posting about that too here.
As fro Strategic Security domain jobs, almost every "Analyst" job asks for some degree/qualification in the field and internship or work experience. "Data Analyst" in Security domain is expected to be someone who is able to make further sense of raw data of that organization has. That usually means Data cleaning and Transforming it into graphs and charts. Technology to be used is all random. Random because if the organization is doing it for first time, then only one has freedom to choose tools and platforms, else one has to mainly fix last guy's errors and follow the stipulations laid down by the company.
I say this from personal experience because I did go for interview for Data Analyst position in couple of social development organization/institutes including UChicago's Research program measuring and monitoring Ganga's health and thus guage impact of Swachh Bharat Mission initiatives. The Lead Researcher and Interviewer was a friend and he laid it all out to me and that's when I began to realize how out of my depth was here. Thus instead of wasting opportunities and time, that's when I decided to raise myself to level befitting such work.
 
What makes a good engineer? Just a bit curious
Just dont meddle in others affairs and keep on working as if there is no tomorrow. I mean to say work towards the goals or targets set by the management. And you will rise up the ranks.
few things:
1. Be the best. for example: if you say "Web programmer with 2yrs of React experience." try to be the best react programmer among 2yr experienced.
2. Develop good ethics. things like don't lie in resume. give your best at work and have good work ethic. maintain good relationships with peers and managers. don't indulge in gossips etc... (btw, its easy to say but difficult to implement. takes time.) btw, it takes less than 2 minutes for the interviewer to figure out the fake experience. Also, maintaining good relationship with your boss is not same as brown nosing.
3. Have a good attitude. I've seen some really talented engineers but with shitty attitude. I call it "Programmer arrogance", seen especially with c/c++ programmers in the system programming world. They think that they know everything. They refuse to work with others. etc... to give you an example, I was working with one guy who owned the scst driver implementation, it would not work (as in bsod equivalent of Linux) he would simply compile me another driver and tell me that it is fixed. after few iterations, I told my boss that I am not his personal tester and he needs to get his shit together and stop wasting my time.

btw, the reason I said its difficult to find good engineers is that it usually takes around 6 months to fill in an open req. companies dont want to recruit shitty engineers and then fire them or see good engineers leaving the company.
 
Take an online course for learning data science and machine learning, Because more and more students are shifting to learn new skills from online platforms it is more convenient, cost-effective, and easy to join as per your time preference.

Before joining any online course make sure that it is well structured. This means it has to be combined with EBooks, Videos, Online resources
and community forum for Q&A.
 
@bracknelson How valid are these courses from a career PoV? would an employer consider them on par with an actual degree?
Short answer. No it can't directly replace a bachelor's degree.
I think it is a good if you are switching domain and already have some job experience.
Btech/Mtech in CS/EE already have courses in this domain. So often times you will be competing with people who learnt it in their curriculum.
 
@bracknelson How valid are these courses from a career PoV? would an employer consider them on par with an actual degree?
Most employers will always put a person with a degree higher than a person w/o one even if the skillset is the same. Especially in India.
Degree does not guarantee skills, not even online courses do that but it does say something about your diligence and perseverance which is very important nowadays.
 
TL;DR Is 6 months enough to learn DSA well enough to go SDE 1 in Amazon and others ? If not then what would be a realistic timeline ? What is the best way/source to learn DSA ? Bear in mind that I've been out of touch with Computers and Coding for near a decade but have done all of the above in the past.

Well Covid has been pissing on it like an incontinent geriatric fellow so had to rework my plan and explore other options. After a long (3 hour +) discussion with one of my college friend, who is a Cyber Security professional in Apple with 10 years+ of experience, we came to the conclusion that to fulfill my prime objective of bridging wage disparity that I'm bound to see no matter where I go and what I do, my best bet would be go for a Coding job. Now here's how we came to this:
Pros
  • Even today a fresher can easily get 10 LPA+ package in GAMA (Google,Apple,Microsoft,Amazon)and it's siblings (DE Shaw,Adobe etc)
  • Coding job requires coding skills, no matter ones age or lack of experience.
  • Good Coders are always in demand.
  • Working hard and practicing a lot is bound to give results in this domain.
  • Hiring and new jobs isn't going down in Tech sector anytime soon
  • Will allow me to have some brownie points for my Masters
  • A good coder can always branch off in Security(Cryptography) or Machine Learning or whichever field they desire.
Cons
  • I don't like Coding (well that's becuase I never did it seriously. When I did do it, during my internship, I performed well enough to be offered a position in the organization and also managed to clear Coding test at Flipkart circa 2012)
  • Will have to learn a lot of things in less amount of time if I want to get a job soon.
  • Do not have support of teachers or peer group to aid me as it did in the past when in college or working.
All in all the way I see it, the real thing to learn here is DSA. That's something I learned really well back in college (due to supplementary) and during GATE prep and then in Masters for placement prep. So I know what has to be done. I found them difficult in the past because I was a wide-eyed idiot back then (maybe a narrow-eyed one now but still an idiot nonetheless) and I never applied myself to really learning it. Situation hasn't changed much now regarding this, still don not like Coding that much but now I see the bigger picture and also realize that it's something I have to do. I still cannot write a program to find if a given input is a Prime number or not but I know it's not because I do not C or Java (actually have a SCJP from 2009), it's because I don't know/understand the Math, the logic behind such calculation. Now Math is again one thing I wasn't good at but since last year I learned Complex Numbers, Vector algebra and Matrices from Khan Academy and realized that if explanation of logic and ideas is lucid enough, I do get it.
So for past week now I have been 5 hours daily; 2 hours of C from Kernigham and Ritchie book, 2 hours of Java from geeksforgeeks and an hour to Python from here. Hope to get basic and intermediate concepts of all 3 by month's end. Then will start with DSA from MIT and NPTEL lectures, geeksforgeeks an Coreman book. Hope to be ready by August to go for interviews/Coding tests.

So here are my questions:
  • Is my timeline realistic ? Will I be needing more time to be competent enough to face interviews? I know it's a very loaded and generic question but all I need is a ballpark idea from experience(s) of other FMs.
  • What are the best source(s) for learning DSA ? Not only learning but also discussing problems/issues one face, doubts and questions regarding concepts?
  • Besides knowledge of a language such as Java and strong command over Algorithms , what else does one needs to know for such job; SQL/NoSQL, HTML,CSS, Javascript ?
  • A lot of web discussions suggested starting off from freecodecamp.org Went there but saw it to be heavily laden towards web technologies and Python. So which site should one go for, for C and Java ?
Please feel free to deconstruct, critique my current plan. Stress testing it going to only make it and me better.
 
I
TL;DR Is 6 months enough to learn DSA well enough to go SDE 1 in Amazon and others ? If not then what would be a realistic timeline ? What is the best way/source to learn DSA ? Bear in mind that I've been out of touch with Computers and Coding for near a decade but have done all of the above in the past.

Well Covid has been pissing on it like an incontinent geriatric fellow so had to rework my plan and explore other options. After a long (3 hour +) discussion with one of my college friend, who is a Cyber Security professional in Apple with 10 years+ of experience, we came to the conclusion that to fulfill my prime objective of bridging wage disparity that I'm bound to see no matter where I go and what I do, my best bet would be go for a Coding job. Now here's how we came to this:
Pros
  • Even today a fresher can easily get 10 LPA+ package in GAMA (Google,Apple,Microsoft,Amazon)and it's siblings (DE Shaw,Adobe etc)
  • Coding job requires coding skills, no matter ones age or lack of experience.
  • Good Coders are always in demand.
  • Working hard and practicing a lot is bound to give results in this domain.
  • Hiring and new jobs isn't going down in Tech sector anytime soon
  • Will allow me to have some brownie points for my Masters
  • A good coder can always branch off in Security(Cryptography) or Machine Learning or whichever field they desire.
Cons
  • I don't like Coding (well that's becuase I never did it seriously. When I did do it, during my internship, I performed well enough to be offered a position in the organization and also managed to clear Coding test at Flipkart circa 2012)
  • Will have to learn a lot of things in less amount of time if I want to get a job soon.
  • Do not have support of teachers or peer group to aid me as it did in the past when in college or working.
All in all the way I see it, the real thing to learn here is DSA. That's something I learned really well back in college (due to supplementary) and during GATE prep and then in Masters for placement prep. So I know what has to be done. I found them difficult in the past because I was a wide-eyed idiot back then (maybe a narrow-eyed one now but still an idiot nonetheless) and I never applied myself to really learning it. Situation hasn't changed much now regarding this, still don not like Coding that much but now I see the bigger picture and also realize that it's something I have to do. I still cannot write a program to find if a given input is a Prime number or not but I know it's not because I do not C or Java (actually have a SCJP from 2009), it's because I don't know/understand the Math, the logic behind such calculation. Now Math is again one thing I wasn't good at but since last year I learned Complex Numbers, Vector algebra and Matrices from Khan Academy and realized that if explanation of logic and ideas is lucid enough, I do get it.
So for past week now I have been 5 hours daily; 2 hours of C from Kernigham and Ritchie book, 2 hours of Java from geeksforgeeks and an hour to Python from here. Hope to get basic and intermediate concepts of all 3 by month's end. Then will start with DSA from MIT and NPTEL lectures, geeksforgeeks an Coreman book. Hope to be ready by August to go for interviews/Coding tests.

So here are my questions:
  • Is my timeline realistic ? Will I be needing more time to be competent enough to face interviews? I know it's a very loaded and generic question but all I need is a ballpark idea from experience(s) of other FMs.
  • What are the best source(s) for learning DSA ? Not only learning but also discussing problems/issues one face, doubts and questions regarding concepts?
  • Besides knowledge of a language such as Java and strong command over Algorithms , what else does one needs to know for such job; SQL/NoSQL, HTML,CSS, Javascript ?
  • A lot of web discussions suggested starting off from freecodecamp.org Went there but saw it to be heavily laden towards web technologies and Python. So which site should one go for, for C and Java ?
Please feel free to deconstruct, critique my current plan. Stress testing it going to only make it and me better.
I would also suggest trying hackerrank and similar platforms.
That way you will learn both the language and DSA and also how to solve time-bound problems.
 
Yeah,my friend suggested me to create a CoderRank profile. I saw the site but m yet to make a profile there and apprehensive a bit because I don't know/understand how I can "show my work" there when I haven't done any.
 
Yeah,my friend suggested me to create a CoderRank profile. I saw the site but m yet to make a profile there and apprehensive a bit because I don't know/understand how I can "show my work" there when I haven't done any.
Not sure about coderRank will have to check but for hackerRank you can just create a profile and start solving problems.
 
Dunno but from what I could gather from random YouTube videos, SDE 2 gets almost 20 LPA+ in such companies. haven't corroborated this with anyone working there or at Payscale or Glassdoor.
 
It really depends. I am B.Tech in Computer science and working as a Software engineer in a big bank. I work as React.js developer and have delivered multiple applications which are currently running in production. I am one of the top performers in the team. But DS/Algo still hurts my head. I have tried many times and given up. So I know its not for me. I stick to interviewing for companies that ask questions related to the job requirement, instead of asking for example to invert a binary tree.
One way is to go through GeeksForGeeks and mug up all the Amazon interview questions as they are mostly repeated. My memory isn't good either so that's also not an option.
 
Back
Top