AthenaHealth Interview Experience | On-Campus Virtual 2020 - GeeksforGeeks

15 Sep, 2020
College: M.S Ramaiah Institute of Technology, Bangalore Date: 26th August 2020 and 27th August 2020 
Athena Health is a USA based IT company with the vision is to create a thriving ecosystem that delivers accessible, high-quality, and sustainable healthcare for all. The Company has visited our college with a star package and for the designation of Associate Member of Technical Staff for development. There were a total of 433 students registered for this on-campus recruitment drive. Only final year bachelor students were allowed to sit for this drive. 
Pre-Placement Talk: Like every other recruitment drive Athena health also conducted a virtual pre-placement talk which mainly focuses on the job description, Cost To Company, work culture, and vision of the company.  
Round 1 (MCQ & Coding): This round held on HackerRank and time duration for this round was 90mins.
First question: 50 marks 
Second Question: 75 marks
Coding Questions:
The First Coding question of 50 marks was an easy level question that can be solved using multiple ways but due to time complexity constraint, one needs to solve this question in maximum 0(n) time complexity to pass all test cases. The cost of stock on each day is given in an array A[] of size N. Find all the days on which you buy and sell the stock so that in between those days your profit is maximum. Example: Input: A[] = {100, 180, 260, 310, 40 ,535, 695} 
Output: 865 
Explanation: We can buy stock on day 0, and sell it on
             day 3 and again buying on day 4 and sell it 
             on day 6, which will give us maximum profit.The Second Coding Question of 75 marks also has several ways to solve the question but I solved it using Hashing Data Structure.Given two unsorted arrays A of size N and B of size M of distinct elements, the task is to find all pairs from both arrays whose sum is equal to X. and output the count of all the distinct pairs. Example: Input: N=5 
       M=5 
       X=9 
       A[] = {1, 2, 4, 5, 7} 
       B[]={5, 6, 3, 4, 8} 
Output: 3 
Explanation: (1, 8), (4, 5), (5, 4) are the pairs which sum to 9.
The First Coding question of 50 marks was an easy level question that can be solved using multiple ways but due to time complexity constraint, one needs to solve this question in maximum 0(n) time complexity to pass all test cases. The cost of stock on each day is given in an array A[] of size N. Find all the days on which you buy and sell the stock so that in between those days your profit is maximum. Example: Input: A[] = {100, 180, 260, 310, 40 ,535, 695} 
Output: 865 
Explanation: We can buy stock on day 0, and sell it on
             day 3 and again buying on day 4 and sell it 
             on day 6, which will give us maximum profit.
The First Coding question of 50 marks was an easy level question that can be solved using multiple ways but due to time complexity constraint, one needs to solve this question in maximum 0(n) time complexity to pass all test cases. 
The cost of stock on each day is given in an array A[] of size N. Find all the days on which you buy and sell the stock so that in between those days your profit is maximum. 
Example: 
Input: A[] = {100, 180, 260, 310, 40 ,535, 695} 
Output: 865 
Explanation: We can buy stock on day 0, and sell it on
             day 3 and again buying on day 4 and sell it 
             on day 6, which will give us maximum profit.
The Second Coding Question of 75 marks also has several ways to solve the question but I solved it using Hashing Data Structure.Given two unsorted arrays A of size N and B of size M of distinct elements, the task is to find all pairs from both arrays whose sum is equal to X. and output the count of all the distinct pairs. Example: Input: N=5 
       M=5 
       X=9 
       A[] = {1, 2, 4, 5, 7} 
       B[]={5, 6, 3, 4, 8} 
Output: 3 
Explanation: (1, 8), (4, 5), (5, 4) are the pairs which sum to 9.
The Second Coding Question of 75 marks also has several ways to solve the question but I solved it using Hashing Data Structure.
Given two unsorted arrays A of size N and B of size M of distinct elements, the task is to find all pairs from both arrays whose sum is equal to X. and output the count of all the distinct pairs. 
Example: 
Input: N=5 
       M=5 
       X=9 
       A[] = {1, 2, 4, 5, 7} 
       B[]={5, 6, 3, 4, 8} 
Output: 3 
Explanation: (1, 8), (4, 5), (5, 4) are the pairs which sum to 9.
 Around 50 Students out of 433 students were shortlisted for the next round.  
Round 2 (Technical Interview): After the first round, all shortlisted candidates received a codepair meeting link on their registered email. The interview was virtual due to the COVID-19 pandemic and was conducted on codepair platform of HackerRank specially designed for virtual interviews. My interview was in the first batch of interview sessions because they call students after sorting them alphabetically on the basis of their name.  
The interviewer was very friendly, asked me to introduce myself, asked me some questions related to my resume, and directly moved on to the technical aspect, some questions which he asked were: 
What do you mean by database transaction and what is ACID properties? I explained it Which is your preferred programming language and why?  I told JavaWhy do you like java and not C/C++? I told because I don’t like the concept of Pointers and in java, we don’t use pointers instead we use objects in java and I find myself more comfortable with objects.How objects removed the concept of pointers? I told everything about the objects and explain in properly.What is the difference between Abstract class and Interface in java? Explain External and Internal fragmentation occurs during the dynamic allocation of memory?
What do you mean by database transaction and what is ACID properties? I explained it 
Which is your preferred programming language and why?  I told Java
Why do you like java and not C/C++? I told because I don’t like the concept of Pointers and in java, we don’t use pointers instead we use objects in java and I find myself more comfortable with objects.
How objects removed the concept of pointers? I told everything about the objects and explain in properly.
What is the difference between Abstract class and Interface in java? 
Explain External and Internal fragmentation occurs during the dynamic allocation of memory?
After this, he gave me a competitive programming question and asked me to solve it.  
He asked me the same 75 marks question asked in the coding round with some minor changes and asked me to explain the algorithm and code the most optimized solution for the same.
As codepair platform contains a whiteboard and java editor, I explained the algorithm verbally with the help of an example and code the same on the editor, and fortunately, it works and passes all the test cases of random input which he gave. 
Consider a string S and text T. Output the smallest window in the string S having all characters of the text T. Both the string S and text T contains lowercase English alphabets.Example: Is the smallest substring in the given string S which contains every character of T. (ahtenahealth) Input: S = athenahealth 
       T=nlt 
Output:"nahealt" 
Consider a string S and text T. Output the smallest window in the string S having all characters of the text T. Both the string S and text T contains lowercase English alphabets.
Example: Is the smallest substring in the given string S which contains every character of T. (ahtenahealth) 
Input: S = athenahealth 
       T=nlt 
Output:"nahealt" 
PS: I had solved this question before more than once as it is a standard hashing question, so I was very confident and excited too  
I told him there can be two approaches to solve this question the first one is traversing both S and T using two for loops and checking concurrently which will take 0(n2) time complexity, so I would like to go with a more efficient method using hashing data structure which I guess would take 0(nlogn) time complexity. 
He asked me to explain the algorithm on the whiteboard , as soon as I explained the algorithm he did some minor changes like added duplicates characters in T and then asked for my approach and code. fortunately, I got my code correct and it worked for the random input he gave. (The interviewer was very friendly and helping me while I was typing code).
  
After that, he wanted to check my logical reasoning and gave me a mathematical series and asked me to find the general mathematical pattern and code the same on the editor using java.
While I was coding he asked me, in java why do we write the main function as 
public static void main(String args[])
 Then he asked me “do you have any questions?”, I asked him some questions related to Athenahealth, job description and things on which I should work, he was very cooperative and gave a very positive reply to all the questions. 
NOTE: Interviewer always focuses on the problem-solving approach of an interviewee, they also give hints and help you in solving the problem with appropriate algorithms, just don’t fake yourself an interview and don’t make excuses. 
Around 21:00, all the shortlisted students got a Microsoft Team meeting link on their registered email for Managerial Round which was conducted the very next day.  They Shortlisted around 15 students for the Managerial round.  
Round 3 (Managerial Round): Managerial Round is conducted to make the decision of recruiting a person more rigid and perfect, All the students who are shortlisted till this round are a capable and good fit for the job profile. In this round, the interviewer will probably have some feedback for you. This round of mine started with the standard interview question “Tell me about Yourself”? 
This is the basic format for an IT fresher to answer this question with confidence and create a good impression on the interviewer. (One can also mention their CGPA in this answer but it depends on individual choice) 
Basic format to answer Tell me about yourself  (for IT freshers)
Moving on, He went through my projects mentioned in my resume and asked me to explain my project’s  
ObjectiveTechnologies and libraries used.Challenges faced. Rectification and solution to those challenges.The outcome of the project and future endeavors of this project.A number of members in my team and what was my contribution to the project.How did we manage to work as a team during this pandemic for this project as all of us were working from our home?
Objective
Technologies and libraries used.
Challenges faced. 
Rectification and solution to those challenges.
The outcome of the project and future endeavors of this project.
A number of members in my team and what was my contribution to the project.
How did we manage to work as a team during this pandemic for this project as all of us were working from our home?
He asked me some normal technical questions related to the database and connections of the project in between while I was explaining above mentioned points. 
After that, He again went through my resume and asked me about the Entrepreneurship Development Center (E-cell) of our college as I was the core member of the club, He also asked questions regarding the work we do, events we organize and how do we work as a team , just after that he gave me a situation related to management, teamwork and asked me what I will do in that situation. 
Then he asked me “Do you have any questions”? 
I asked him some questions related to the products of Athena health and the technologies used to create those products, I also asked him regarding the job role and also gave one suggestion for the products of Athenahealth.  He replied to all the answers in a very polite and positive manner and gave feedback for my project as well. 
In Managerial Round, They had also asked puzzles to some of my friends but fortunately, he did not ask any puzzle to me  
Note: Before going for this round, go through your projects and all its technical aspects, one should know everything about the things they are mentioning in their resume because the interviewer can ask anything but not beyond your resume. Prepare well and communicate with confidence and smile. 
After around 35 minutes of my Managerial Round, I received one more Microsoft Team meeting link for HR Round on my email.  
Round 4 (HR Round): Every company conducts an HR Round to judge your personality, behavior, your weakness, your strength, your background, your capability to handle the role and to make sure that you are the right fit for the job. The HR Round is usually the last round in the recruitment process of a company.
This round of mine started with the question “What do you know about Athenahealth and its working ?” I started with the vision of the company and then mentioned some of its products and told everything I knew about the company. 
After that, she went through my resume and asked lots of questions related to my education, my family, my certificates, my internships, my extracurricular activities, and skills, etc. Some most important questions HR asked me were: 
Do you have plans for higher studies?Do you have any job location preference?What are your long term plans?Why should we hire you? Etc.
Do you have plans for higher studies?
Do you have any job location preference?
What are your long term plans?
Why should we hire you? Etc.
After that, she explained to me everything regarding the CTC breakup, benefits, and perks of the company, my job role description, and the technologies that they are working on. She also talked about future opportunities and work culture in AthenaHealth. 
Then she asked me “Do you have any questions”? I asked some questions related to the work culture and challenges faced by the company during the COVID-19 pandemic. She was very kind and professional and gave a very positive response to all my questions.  
One should always go through the website or LinkedIn account of a company and should gather information about the company’s vision, working, products, etc. before going for an HR interview.
One should always prepare himself before going for this round and should have a justified reason/story for each and every answer he gives.
Announcement of Final Selected Students: Platform was Microsoft Team. Around 19:00, All the final selected students received a Microsoft Team Meeting Link. They selected 6 students, and I was one of them :-)). 
The meeting was very professional, the full recruiting team was there, and they were congratulating all the selected students. The vibe was very pleasant and the environment was friendly. Overall it was a very nice experience and things went very smoothly and punctually.  
Important Note:
One should start preparing for placements prior to the placement season begins and should mostly focus on Competitive Programming, Data Structures, and Algorithms if they are aiming for getting placed in any IT Giants.
One should always brush up the concept of technical subjects such as DBMS, Operating System, Computer Networks, and OOPS.
Basic aptitude and logical reasoning should be practiced.
One can practice competitive programming on a platform such as GeeksforGeeks practice, InterviewBit, HackerRank, etc.
Always stay confident and believe in yourself.
All the best for all your future endeavors and happy coding.
Athena-Health
Marketing
On-Campus
Interview Experiences
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Amazon Interview Experience for SDE-1 (On-Campus)
Microsoft Interview Experience for Internship (Via Engage)
Amazon Interview Experience for SDE-1
Difference between ANN, CNN and RNN
Persistent Systems Interview Experience (Martian Program)
Amazon Interview Experience (Off-Campus) 2022
Amazon Interview Experience for SDE1 (8 Months Experienced) 2022
Zoho Interview | Set 1 (On-Campus)
Amazon Interview Experience for SDE-1(Off-Campus)
Amazon Interview Experience for SDE-1