Epam Questions
Epam Questions
© Copyright by Interviewbit
Contents
In this article, the InterviewBit team has compiled an exhaustive list of EPAM
Interview Questions and Answers that cater to both Freshers and Experienced
Professionals. Also included are tips on how to prepare for EPAM's interview, as well
as information about EPAM's recruitment process. Review them and fine-tune your
responses before your EPAM interview.
Now, let's take a look at the EPAM Recruitment Process.
2. Interview Rounds
1. Coding challenge (Core Java) - Online
The 1st round is the Java Online Coding Challenge, where the candidates will have to
solve 3 EPAM coding questions that will be related to Core concepts (such as arrays,
stacks, queues, linked lists, graphs, etc). The EPAM Test is unique in that it must be
solely written in Java only. It is mandatory that candidates use the webcam in the
first round; they cannot leave their seats during the test. Take a look at the EPAM test
pattern as follows:
1 20 40 minutes
2 30 50 minutes
3 50 60 minutes
MCQs 20
3. Group Discussion
Candidates who meet the qualifying marks will be called for the 3rd round of Group
Discussion. In this round, a group of selected candidates will be formed. An instructor
will oversee the entire GD round, giving the candidates a topic on which they will be
conversing for approximately 10 minutes each. If you want to win this round, just
speak up. Essentially, they are testing your English ability and communication skills.
4. Technical Interview Round
Following the GD, the shortlisted candidates will be invited to the 1:1 Epam technical
interview. Technical interview questions are designed to assess your technical
knowledge and your ability to handle conflict and challenging scenarios related to
the position you are interviewing for. Questions will range from technical to problem-
solving skills to brain teasers. Thus, you must prepare for every eventuality.
Interview questions will cover topics such as Java, Object-Oriented
Programming (OOP), HTML Code, Database Management Systems (DBMS), Data
Structures, and Algorithms (DSA).
The interviewer will also ask you about your past experiences and projects, how
you handled obstacles, and how successful they were.
Note: Don't be afraid to tell the interviewer if you don't know the answer to a
specific question (in a polite manner). Passing this round is 90% more likely to
lead to a job offer; nevertheless, you must also pass the easiest yet most critical
HR interview.
5. HR Interview Round
Having a good academic record and technical knowledge alone will not be sufficient
to gain employment. The HR round is usually the final round in a company's
recruitment process. Though the HR round may seem easy, it is most critical and
essential. At this stage, the hiring manager will look at candidates' personalities,
strengths, and weaknesses, along with their communication and reasoning skills. The
interviewer will also ask a few behavioural questions to get acquainted with you and
determine if your personality and behaviour are a good match for the position. Below
you will find some common Epam HR interview questions.
What does EPAM mean?
Tell me a little bit about yourself and your family background.
What makes you confident you are eligible to apply for EPAM?
How do you envision yourself five years from now?
How did Epam catch your attention?
Are you aware of EPAM systems?
What are your hobbies?
When a crisis strikes, how well do you cope?
What makes you a good hire?
What are your greatest assets and greatest weaknesses?
Would you like to share your take on the COVID situation??
Would you like to learn any new technologies in the future besides the ones you
already know?
Have you ever felt like you couldn't overcome a situation? What helped you get
through it?
Would you like to ask us anything?
Can you manage pressure well?
What interested you in picking Java as your primary language or is it simply
because of EPAM?
What would you do if a coworker consistently arrived late to a weekly meeting?
HashMap HashTable
It is non-
synchronized. As a
It is synchronized. As a result, only
result, two or more
one thread can access the Hashtable
threads can access
data at a time.
the HashMap data at
the same time.
In a hashmap, there
can be one null key Hashtables do not allow null keys or
and any number of null values.
null values.
// Abstract class
abstract class InterviewBit
{
// Abstract method (does not have a body)
abstract void Products();
// regular method
void method();
{
...
}
}
Output:
ArrayList and Vector are both dynamic arrays (resizable arrays) used in Java to
implement the list interface.
ArrayList Vector
processData(x);
System.out.println("Value of x after call-by-value: " + x);
}
public static void processData(int x)
{
x=x+10;
}
}
Output:
10. Could you tell me how many data structures you are familiar
with?
Data Structures are specialized ways to store and organize data in computer systems
in order to perform operations on the data more efficiently. Data structures are used
across a wide range of fields in computer science and so ware engineering. You
should choose the appropriate data structure based on your requirements and
project. In the case of storing data sequentially in memory, the Array data structure is
recommended. In general, data structures can be divided into two categories:
Linear data structure: In the linear data structure, elements are arranged one a er
another in sequence. As the elements are organized in a specific order, they are easily
implemented. A few examples of linear data structures are as follows:
import java.util.Arrays;
class Quicksort
{
// method to find the partition position
static int partition(int array[], int leftmost, int rightmost)
{
Output:
Unsorted Array
[5, 4, 6, 1, 0, 8, 3]
12. What is the best case and worst case time complexity for the
quick sort?.
Quicksort can be applied in several different ways based on the position of the pivot
in the array:
Selecting the first or last element in the array as a pivot element
Selecting a median element of an array as a pivot element
Best Case: Quicksort performs the best if we divide arrays and subarrays into two
equal partitions, i.e., when we select the median element of the array as a pivot
element. The partition positions for each element happen to be in the middle of the
array, resulting in a balanced binary tree of height log(n). Therefore, the total
complexity becomes O(n log n).
Worst Case: Worst case is when we select the le -most or right-most element of an
array as a pivot element. The partition positions for each element happen to be at
the edge of the array (le or right), resulting in a skew tree having height n.
Therefore, the total complexity becomes O(n^2).
return -1;
}
public static void main(String args[])
{
Main obj = new Main();
int array[] = { 1, 2, 3, 4, 5, 6, 7 };
int n = array.length;
Scanner s= new Scanner(System.in);
System.out.print("Enter a target element: ");
int x=s.nextInt();
Output:
14. State the difference between quick sort and merge sort.
Both Quicksort and Mergesort are sorting algorithms that allow array elements to be
arranged in sequence order, thereby, facilitating a faster and easier search for array
elements. Both are based on the divide and conquer approach.
Quicksort Mergesort
In Quicksort, each
Mergesort repeatedly divides the
element of the array is
array into two subarrays (n/2)
compared with a pivot
until only one element remains.
element.
Advantages:
Ensure 100% test coverage.
It makes it easy to identify missing functionality.
Aids you in finding defects related to vital requirements, along with defect
severity and priority.
When requirements change, it is possible to identify test cases that should be
updated.
The overall status of test execution can be tracked easily.
17. Could you explain how the stack can be implemented using
the array?
Stack is a type of linear data structure that follows the LIFO (Last In First Out)
principle. Insert and delete operations on the stack are performed from one end (top)
only. Inserting a data element on top of the stack is called a push operation, and
removing a data element from the top is called a pop operation.
Using pop(): To delete data from the stack, we use the Pop() function, but
before we do so, we have to check if the stack is empty. If the stack is empty, the
push() operation cannot be performed; otherwise, the pop() function
decrements the value at the top of the stack.
class Scaler
{
Scaler() {
// constructor body
}
}
Types of Constructors:
As you can see, there are two classes B and C that inherit from class A. Suppose,
classes B and C override the method show() (inherited from class A) and provide their
own implementation. Class D inherits properties from both classes B and C, resulting
in multiple inheritances. Since class D wants to override the show() method, what
overridden method would be used? Is it from class B or C? Here we are faced with
ambiguity.
import java.io.*;
import java.util.*;
import java.util.Scanner;
public class Main {
int sum = 0;
for (int i = 0; i < n; i++) {
char ch = str.charAt(i);
// Check to see if ith character is a vowel
if (ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || ch == 'u')
sum += arr[i];
}
// Driver Code
public static void main(String args[])
{
Scanner sc= new Scanner(System.in);
System.out.println("Enter a String");
String str=sc.nextLine();
System.out.println(vowel_calc(str));
}
}
Output:
Enter a String
Scaler
22
21. Can you explain each keyword from the public static void
main(String args[])>?
Java's most important method is public static void main(String[] args). Java
programs begin with the main method whose syntax is public static void
main(String[] args). Only the String array argument name can be changed, for
example, args can be changed to myStringArgs.
Public: It is an Access modifier that specifies where and who can access the
method. When you make a method non-public, it will not be executed by any
program, since there are certain restrictions on access.
Static: At the beginning of the Java runtime, there are no objects of the class
defined. As main() is static, the JVM (Java Virtual Machine) can invoke it without
having to instantiate (without creating the object) the class. Furthermore, this
prevents the unnecessary consumption of memory by objects that are declared
only for calling main() methods by the JVM.
Void: Every method in Java must provide a return type. Because Java's main
method returns nothing, its return type is void. A Java program terminates once
the main() method has terminated. Therefore, the main() method cannot return
any value, as the JVM cannot do anything with its return value.
Main: It's the name of Java's main method. The JVM searches for this identifier
as the starting point for the Java program.
String[] args: In Java, the main method takes only one argument of the type
String array. These arguments are also known as Java command line arguments.
Perfect your skills: Practice different types of job interviews, such as the
screening interview, group interview, technical interview, the behavioural
interview (competency-based). Review past interviews to gain a better
understanding of how interviews are conducted, what you can expect, and how
you should prepare for them. Search and solve previous years' Question Papers
to get a better understanding of the topics and test your knowledge as well as
speed and accuracy.
Focus on the basics: Review the job description to figure out what kind of
position you're applying for. Research about the organization, look for out what
the organization needs, how your background matches, and what you can bring
to the organization. Interviewers will primarily ask questions about
fundamentals; DSA, operating systems, networking, DBMS, CS concepts, class
design, programming language, etc. Fundamental knowledge will equip you to
solve open-ended problems - the kind of problems many organizations face
every day.
Get geeky: While you are engrossed in a technical conversation, feel free to
share your interests and opinions. A room filled with like-minded people
naturally fosters conversations around mutually engaging technical topics.
Don't miss the shot! Remain enthusiastic and positive throughout the interview.
Think of different ways to solve problems: Interviewers will try to figure out
how you will utilize your fundamentals in practice by asking open-ended
questions that can be solved in different ways. You will be evaluated on how you
articulate open-ended questions, how you choose a solution, and how you
communicate effectively. Practice solving questions with the various tools from
your toolbox in order to develop a sense of how and when to utilize each of
them.
Express your thoughts: Talk through your alternative solutions before you
decide which to use when solving a given problem. Doing so will enable the
interviewer to see and understand how you approach the problem. It is
important to ask clarifying questions and not to enlarge the scope of the
problem. Also, ensure that you verbally run through test cases prior to
concluding that you have completed the task, as this will allow you to verify the
code and demonstrate to the interviewer that you are checking your code.
Never jump right in: Don't jump right in when facing a coding challenge;
instead, ask questions first (even if you know the answer already). If you run into
trouble, don't be afraid to ask for help. Asking thoughtful questions in your
interview can reinforce your interest in the job. A er each interview round, do
t i th t it t k ti i th
Page 34 © Copyright by Interviewbit
EPAM Interview Questions
Apply for the position that best matches your skills and interests on the
company's official website.
Usually, within two to three business days (and sometimes up to a week), they
will review your application and check if you are a good fit for the position. In
case the match is right, they will contact you for further processing.
You will now go through the standard EPAM interview process.
A er the interview, if the feedback is positive, you will receive an offer.
CSE/ECE/IT/other CS Stream
Stream
Only
Css Interview Questions Laravel Interview Questions Asp Net Interview Questions