I got the offer within 8 months starting from a green hand in CS.
I applied to more than 100 companies. I got interviews from 30 companies. And 11 companies interviewed me onsite. The first 7 companies did not give me offer. During the last 4 interviews, I got offer from 3 big companies and 1 startup. At last, I accept offer from G.
My background
A bludger of software engineering major before, could not recognize ‘main’ in Java/C++. Did not finish even 100 rows of code. The foundation of CS knowledge is extremely sprawling and tousy. Studied CS master in US for one year in US. Got in the program in 09/2012, started finding a job in 01/2013, not big difference than I was when graduating with BS.
All in all, five points for me:
- Knowledge
- Practice
- Goal
- Mind-set
- Skills
1. Knowledge
Master a programming language. I choose Python. Its syntax and data structures are simple enough. It lets me focus more on usage of programming language-apply to data structures.
Rudiments:
Learn Python basic on codecademy.
Applications:
Wrote down the python code for cracking the coding interview. And then I can gradually understand Python documentation.
Data structures and algorithms:
Data structures. Found out some online ppt or online class to study.
Algorithms. Not so useful for finding jobs. Got to know the most used ones for data structures. (DFS etc) and dynamic programming.
Practice
Apply the language I learned and the algorithms onto data structures. Method is drilling through the coding interview questions. I drilled through cracking the coding interview. I drilled through the interview questions for 5 times. And after that, before each interview, I drilled through it once.
CS attainment
After drilling through the coding questions. I thought I was good enough. But I was still rejected. And I found that each time talking with the interviewers, I lacked the CS attainment, some basic knowledge and the relationship between all the knowledge.
Rudiments
A quick way to get to know comprehensive CS knowledge.
Recite main sections twice. Sometimes, it helped on interviews. But I still did not master the knowledge comprehensively and understand the knowledge.
Get deeper into the knowledge
- Data structures
- Algorithms
- Database
- Operating systems
You must have all the four classes. Some fancy classes may not be so helpful for finding a general developer position. If you did not have the classes, then go online for the classes.
Recommending Berkeley CS classes:
Set up the way of thinking in CS
Structure and interpretation of computer programming
Progress
Studied comprehensively.
To accomplish the knowledge systems, quickly studied the below:
A. Language:
Java, C++
Find books for the languages. Spent hours on them. To see what data structures are called here,
and how to apply them.
B. Front end:
HTML, CSS, JQuery, XML
Read each part from W3C school.
C. Linux command
D. Web Development
Django
E. Mobile
Android: online course ( udemy)
iOS: iOS programming
F. Others
Design Pattern: online course (udemy)
Programming pearls
Complete the book for two days before being interviewed by google. CC150 and leetcode taught me the methods. This book taught me methodologies. The way of thinking from low level to think high level.
2. Practice
Drilling through the coding questions and the CS knowledge help me to have the lego. But I was not confident because I do not have a masterpiece of my own. So, go to write and build my projects. I wrote a side project, such as I wrote an iOS app. You can also write some course projects, or find some projects from your professors.
3. Goal
Must
If you want to find a CS job, you can definitely find one. So, do not have some backup, like going back to original country, continue studying etc. When you have a definite goal, everything becomes simple and definite.
List and source.
At the end of August, I had graduated for around 3 months, I did not find a job. I felt I had interviewed most of the companies that I want to be interviewed. But it was not. So, I spent 2 hours, listing all the companies that I want to have interviews, but I did not. Altogether, 25. I look around to see if I can find someone to refer me to those companies. If there was not, I tried to find the referrals from forums. At last, I got referrals from 22 companies.
Ally
To find the friends nearby to fight for the same goal, work hard together.
4. Mind-set
- Confidence
After drilling through so many questions, and studying so much knowledge, building so many
Projects, confidence will come. And some day, a voice is telling me, ‘I am ready’.
- Belief
How big your desire is , then how big your belief will be.
You can do meditation, imagine one day, you got the offer.
c. The more failures you got, the more you want to go to the interviews.
Keep practicing your interview skills. If you find some loophole in your knowledge, then you go
to do the makeup soon.
5. Interview skills
Introducing your background. Carefully prepare your education background, and your projects. Face to the mirror and practice them. You can also find some friends to do the mock interview.
Prepare 3 interview questions, about the company’s products, future, the team, skilled used in the team etc. Let them feel your interests and enthusiasm.
Smile. When you enter the company to onsite. Tell yourself, you need to smile. Then all the problems will be resolved.
No comments:
Post a Comment