Here is a compilation of all the resources that I have created in the past while I was preparing for job interviews. I thought I will just link them all here for easy access and reference. I’ll come back from time to time if there are any updates.
I notice that i stumble on Java syntax and end up having to google for it. This is bad and reflects how “unfamiliar” i…
Arrays and Strings
ArrayList -> An array that resizes itself when still needed while still providing O(1) access. A typical implementation…
A greedy algorithm builds up a solution by choosing the option that looks the best at every step.
90% of the article here was copied from the leetcode discussion (Except for the last section Tips from a Smart Friend…
Leetcode Object Oriented Programming System Questions
I don’t really know how to term this category of questions so i will just call them ‘systems questions’.
Interview Practice Problems for Multithreading
wait() and notify() need to be wrapped within a synchronized block.
Summary Article of what i have learned in my NUS Modules
In preparation for interviews
Java Implementation (Common interview questions)
Hello, welcome to this page ;)
A Big Overview (not going into the tiny details) of CS4224 — A module taken in NUS.
Summary of what priority queues are, how they are implemented, time complexity….copied from various online sources and…
Springboot API, Lombok, Junit Mockito Test
A mash of syntaxes to remember and reference….
Java Multithreading for Senior Engineering Interviews (Notes from an Educative course)
A short article about the different types of Caching Strategies
Written with reference to ReactJS Documentation and various online resources.
React Hooks [Educative course]
React Hooks allow you to create stateful logic in functional React components.
I’m not too skilled in this area yet…but the following is what I have gathered by watching youtube videos and reading.
From my experience, some key points to remember are to
- Have a clear structure. (Just follow the template below)
- Ask lots of questions to clarify requirements. The interviewer will usually keep the problem description vague and your job is to dig out the requirements from them by asking.
This article is based on 3 sections from the cloned github repository
Here is a template you can use. During the interview, just cover all the points from top to down.
Clean Code / Design Principles
Clean Code: A Handbook of Agile Software Craftmanship By Robert C Martin
Writing clean code is what you must do in order to call yourself a professional. There is no reasonable excuse for…
In general, be prepared to be asked by your interviewers the following questions
- Introduce your projects at work or outside of work
Follow the STAR format.
- Why did you leave your previous job?
If you were laid off, just say “My former employer’s top management has made a strategic decision to undergo restructuring.” (Keep it short)
If you are being probed for more details, just say “With due respect to my previous employer, it will not be nice to discuss this.” Never bad-mouth your previous employer.
ALWAYS REMEMBER not to say these 4 words: Retrenched, redundant, let go, laid off. Don’t say unemployed. Jobless. This is because they have negative connotations and does not help to form a positive impression of you.
- What are your strengths and weaknesses?
Strong commitment to deliver, Collaborate well in a team, Positive attitude towards learning new things.
Not so good at public speaking, Put too much stress on performing well at work. (Follow up with examples on what you are doing to improve yourself)
- What was your proudest achievement in your previous job?
Give some stats on how your project helped the company generate profit etc..Can also give an example of how you went out of your comfort zone blah blah.
- Did you make any mistakes in your previous job?
Give a small mistake…maybe pushed a small UI bug for your work? Actually i am also not sure how to handle this question….
- What do you know about the company?
Need to do some prior research.
- How would your previous manager or teammates describe you?
Say stuff like, “displayed strong ownership for my work” , then give an example.
- What are you looking out in your next job?
You can say things like, “Collaborative environment where I can work with other engineers to solve meaningful problems”, “Encouraged to learn new things and be more experienced”
- What is your expected salary?
Personally for me, I will definitely avoid saying “salary is never the first thing in my mind”…because salary is definitely my utmost priority and i don’t want them to lowball me. However, I know that this is not what employers want to know so I will just say “I’m open to negotiation” and push this conversation to the end until I complete all rounds of interviews or have a counter offer to help me with my negotiation.
After you complete all rounds of interviews, and you know that this company can possibly match your previous pay, you can say things like, “Ideally I can get a 10–15% pay raise from my previous pay”.
If your previous job was relatively well paying, and you want your next job to match it or be higher, then feel free to share your current compensation. This helps both parties to save time and help you decide if you should even spend time interviewing with the company.
Personally for me, even if I know that the pay offered by a company is not very ideal, I will just say I am flexible and will go ahead with the interview because I can still take it as a learning opportunity and form connections with companies. Having a job with some income is better than no job with no income. I can always continue to interview while having a job.
Some questions you may also prepare to ask your interviewer
- Can you explain the job in your own words?
- What do you want this role to accomplish in the first 90 days?
- How do you measure success in this role?
- What has been the biggest challenges for this role?
- What does the team structure look like?
- How has your role evolved since you joined the company?
- What is the development process like at this company, and how does the engineering team collaborate with other departments?
- What kind of opportunities are there for professional growth and career development within the company?
- Can you tell me about a project or challenge the engineering team is currently working on, and how I might be able to contribute to that effort?
- What are some things that you enjoy about your work at xxx? What are some things that you hope can be improved?
- What’s the onboarding process like?