Accolite Digital | SDE Interview | Accepted | 2022
Summary
I interviewed for a Software Development Engineer role at Accolite Digital in 2022 and successfully received an offer. The process involved an online assessment, two technical interview rounds, and a final HR discussion.
Full Experience
My interview journey with Accolite Digital for the Software Development Engineer role began with an initial online assessment. This test had two main sections: MCQs and a coding challenge. The MCQ section consisted of multiple quizzes, each with five questions. I needed to complete a minimum of 20 quizzes and maintain a success rate of at least 60%.
The coding section was an hour-long challenge, requiring me to solve one programming question which typically involved concepts from Graphs and Dynamic Programming.
First Interview Round
This round was focused on my background and data structures. The interviewer started with:
- "Tell me about yourself."
- "Tell me about your Research Work."
- "What is your favorite data structure?"
Following these behavioral and conceptual questions, we moved on to coding problems, many of which were directly from LeetCode:
- Print a tree in increasing order (Binary Tree Inorder Traversal)
- Spiral Order Traversal of a Tree (Binary Tree Zigzag Level Order Traversal)
- Reverse Linked List
- Reverse nodes in k group in Linked List
- Word Search
The interviewer also asked about fundamental concepts like, "What is the advantage of Recursion over Iteration?"
Second Interview Round
The second technical round delved deeper into my technical skills and problem-solving abilities. It started with general discussions like:
- "Tell me the Languages you have worked on."
- "What is multithreading in Java?"
We then moved to system-level thinking and troubleshooting:
- "We have a website, and it is slowing down? What could be the possible reason for that? How can you troubleshoot this problem? Give me a proper way of solving it."
- "How to troubleshoot memory issues in Java?"
- Questions on SQL, specifically "What is outer join?" and "What is inner join?"
This round also included more LeetCode-style problems:
- Coin Change
- First Unique Character in a String (an easy question, but I was asked to discuss 5 different approaches)
- Climbing Stairs
- Burn the Binary Tree Starting From Target Node
HR Round
The final round was with HR. It was a pleasant discussion that covered typical HR questions:
- "Tell me about myself."
- "Why Accolite and how do you fit into the role?"
- "What are your strengths and weaknesses?"
- "Tell me about your projects."
- "How do you manage your time?"
During this round, the interviewer described the company and then immediately informed me that I was selected and would receive an offer letter. It was a great outcome!
Interview Questions (22)
Introduce yourself and provide a brief overview of your background, experience, and career aspirations.
Discuss any research work you have conducted, including its objectives, methodologies, and outcomes.
Identify your favorite data structure and explain why, providing examples of its use cases.
Discuss the advantages of using recursion compared to iteration for solving problems.
Enumerate the programming languages you have experience with and briefly describe your proficiency in each.
Explain the concept of multithreading in Java, its benefits, and how it is implemented.
Diagnose potential reasons for a slow website and propose a systematic approach to troubleshoot and resolve the performance issues.
Describe methods and tools for identifying and resolving memory-related problems in Java applications.
Explain the concepts of inner join and outer join in SQL, providing examples of when each would be used.
Given the root of a binary tree and a target node, simulate burning the tree starting from the target. The fire spreads to adjacent nodes (parent, left child, right child) in one minute. Determine the minimum time required to burn the entire tree.
Explain your motivation for joining Accolite and how your skills and experience align with the requirements of the role.
Discuss your key professional strengths and areas where you are working to improve, providing concrete examples.
Describe your significant projects, detailing your role, the technologies used, challenges faced, and outcomes.
Explain your strategies and techniques for effective time management and prioritization.