Upload Button Icon Add office photos

ThoughtWorks

Compare button icon Compare button icon Compare

Filter interviews by

ThoughtWorks Software Developer Interview Questions and Answers

Updated 20 Feb 2025

10 Interview questions

A Software Developer was asked
Q. In a code pairing round, you will be given a story where you need to add an API to the shared repository. The problem is simple but requires a good understanding of the shared code. You should follow clean ...
Ans. 

Implementing a new API in a shared repository while adhering to clean code and SOLID principles.

  • Understand existing code structure and conventions before adding new API.

  • Follow Single Responsibility Principle: each class should have one reason to change.

  • Use meaningful names for functions and variables to enhance readability.

  • Implement error handling to manage exceptions gracefully.

  • Write unit tests for the new API to...

A Software Developer was asked
Q. What is the difference between CHAR and VARCHAR2 data types in SQL?
Ans. 

CHAR is fixed length while VARCHAR2 is variable length in SQL.

  • CHAR stores fixed length strings, padding with spaces if necessary.

  • VARCHAR2 stores variable length strings, not padding with spaces.

  • CHAR is faster for fixed length data, VARCHAR2 is more flexible for varying length data.

Software Developer Interview Questions Asked at Other Companies

asked in Amazon
Q1. Maximum Subarray Sum Problem Statement Given an array of integers ... read more
asked in Rakuten
Q2. Merge Two Sorted Arrays Problem Statement Given two sorted intege ... read more
asked in Amazon
Q3. Minimum Number of Platforms Needed Problem Statement You are give ... read more
asked in Cognizant
Q4. Nth Fibonacci Number Problem Statement Calculate the Nth term in ... read more
asked in PhonePe
Q5. Form a Triangle Problem Statement You are given an array of integ ... read more
A Software Developer was asked
Q. What are the various types of constructors in C++?
Ans. 

There are three types of constructors in C++: default constructor, parameterized constructor, and copy constructor.

  • Default constructor: Constructor with no parameters.

  • Parameterized constructor: Constructor with parameters.

  • Copy constructor: Constructor that initializes an object using another object of the same class.

  • Example: // Default constructor ClassName() {} // Parameterized constructor ClassName(int x, int...

A Software Developer was asked
Q. 

Left View of a Binary Tree

Given a binary tree, your task is to print the left view of the tree. The left view of a binary tree contains the nodes visible when the tree is viewed from the left side.

Input...

Ans. 

The task is to print the left view of a binary tree, which contains the nodes visible when the tree is viewed from the left side.

  • Traverse the tree in a level order manner and keep track of the leftmost node at each level.

  • Use a queue to perform level order traversal.

  • Print the leftmost node at each level to get the left view of the binary tree.

A Software Developer was asked
Q. 

Maximum Sum Subarray Problem Statement

Given an array of integers, find the maximum sum of any contiguous subarray within the array.

Example:

Input:
array = [34, -50, 42, 14, -5, 86]
Output:
137
Expl...
Ans. 

Find the maximum sum of any contiguous subarray within an array in O(N) time complexity.

  • Use Kadane's algorithm to find the maximum sum subarray in O(N) time complexity

  • Initialize two variables: max_sum and current_sum to keep track of the maximum sum subarray

  • Iterate through the array and update current_sum by adding the current element or starting a new subarray

  • Update max_sum if current_sum is greater than max_sum

  • R...

A Software Developer was asked
Q. What is the difference between overloading and overriding?
Ans. 

Overloading is having multiple methods in the same class with the same name but different parameters, while overriding is implementing a method in a subclass that is already defined in the superclass.

  • Overloading involves multiple methods with the same name but different parameters.

  • Overriding involves implementing a method in a subclass that is already defined in the superclass.

  • Overloading is resolved at compile ti...

ThoughtWorks HR Interview Questions

19 questions and answers

Q. Brief us about your experience.
Q. Why Thoughtworks?
Q. How would you describe yourself as a person?
A Software Developer was asked
Q. 

Subtree Node Count Problem

We are provided with a tree containing 'N' nodes, numbered from 0 to N-1. The objective is to determine the total number of nodes within each subtree of the provided tree. Specif...

Ans. 

Given a tree with N nodes, find the number of elements in each subtree rooted at every node.

  • Traverse the tree using Depth First Search (DFS) to calculate subtree sizes for each node.

  • Use an array to store subtree sizes for each node, starting with leaf nodes having size 1.

  • The subtree size of a node is the sum of subtree sizes of its children plus 1 for the node itself.

Are these interview questions helpful?
A Software Developer was asked
Q. 

Total Unique Paths Problem Statement

You are located at point β€˜A’, the top-left corner of an M x N matrix, and your target is point β€˜B’, the bottom-right corner of the same matrix. Your task is to calculat...

Ans. 

The problem involves finding the total number of unique paths from the top-left to bottom-right cell of a matrix by moving only right or down.

  • Use dynamic programming to solve the problem efficiently.

  • Create a 2D array to store the number of unique paths at each cell.

  • Initialize the first row and first column with 1 as there is only one way to reach them.

  • For each cell (i, j), the number of unique paths is the sum of ...

A Software Developer was asked
Q. 

River Crossing: Help Ninja Cross Over

Ninja stands at the start of a wooden bridge over a river. Some segments of the bridge are damaged. The undamaged segments, marked as 'safe', are listed in an array SA...

Ans. 

Check if Ninja can cross the river by jumping from one safe segment to another based on given constraints.

  • Iterate through the 'SAFE' array and check if Ninja can make the required jumps to reach the last safe segment.

  • Ensure that the next jump is either 'X' - 1, 'X', or 'X' + 1 units from the previous jump.

  • Return 'true' if Ninja can successfully cross the river, otherwise return 'false'.

A Software Developer was asked
Q. 

Middle of a Linked List

You are given the head node of a singly linked list. Your task is to return a pointer pointing to the middle of the linked list.

If there is an odd number of elements, return the m...

Ans. 

Return the middle element of a singly linked list, or the one farther from the head if there are even elements.

  • Traverse the linked list with two pointers, one moving twice as fast as the other

  • When the fast pointer reaches the end, the slow pointer will be at the middle

  • Return the element pointed to by the slow pointer

ThoughtWorks Software Developer Interview Experiences

8 interviews found

Interview experience
5
Excellent
Difficulty level
Moderate
Process Duration
Less than 2 weeks
Result
Selected Selected

I appeared for an interview in Jan 2025.

Round 1 - Coding TestΒ 

Test will be in hacker rank there would be a difficulty level between easy to medium

Round 2 - TechnicalΒ 

(1 Question)

  • Q1. Question will be from data structure and easy to medium level of the programming laanguage question
Round 3 - HRΒ 

(1 Question)

  • Q1. This is just to check your english ability
Interview experience
5
Excellent
Difficulty level
-
Process Duration
-
Result
-
Round 1 - Coding TestΒ 

Hackerrank coding round.

Round 2 - TechnicalΒ 

(1 Question)

  • Q1. Questions and coding testing your OOPS knowledge
Round 3 - TechnicalΒ 

(1 Question)

  • Q1. Every tech stack, SQL, OOPS, JAVA

Interview Preparation Tips

Interview preparation tips for other job seekers - Be familiar with designing and writing better code follwing OOPS, YAGNI,DRY principles.

Software Developer Interview Questions & Answers

user image Prashant dhote

posted on 5 Feb 2024

Interview experience
5
Excellent
Difficulty level
Easy
Process Duration
2-4 weeks
Result
Selected Selected

I applied via Recruitment Consulltant and was interviewed in Jan 2024.Β There were 2 interview rounds.

Round 1 - TechnicalΒ 

(2 Questions)

  • Q1. Code pairing round - you will be given story where you need to add one API to the share repository. It is a simple problem but needs good understanding of the shared code. You should follow clean code pri...
  • Ans. 

    Implementing a new API in a shared repository while adhering to clean code and SOLID principles.

    • Understand existing code structure and conventions before adding new API.

    • Follow Single Responsibility Principle: each class should have one reason to change.

    • Use meaningful names for functions and variables to enhance readability.

    • Implement error handling to manage exceptions gracefully.

    • Write unit tests for the new API to ensu...

  • Answered by AI
  • Q2. Add one API to the existing repository
  • Ans. 

    The API allows users to retrieve weather data based on location.

    • Create a new endpoint that accepts a location parameter

    • Use a weather API service to fetch weather data based on the location

    • Return the weather data in a standardized format, such as JSON

  • Answered by AI
Round 2 - TechnicalΒ 

(2 Questions)

  • Q1. Project you are working on, do some changes to the project, how well you understand the project
  • Q2. Add some feature to the project
  • Ans. 

    The feature added to the project is a user authentication system.

    • Implement a login page with username and password fields.

    • Create a database table to store user credentials.

    • Hash and salt passwords for secure storage.

    • Implement password reset functionality.

    • Add user roles and permissions for access control.

  • Answered by AI

Skills evaluated in this interview

Interview experience
5
Excellent
Difficulty level
-
Process Duration
-
Result
-
Round 1 - Coding TestΒ 

Code paring round was conducted. they will assist you what there expectations are

Interview experience
5
Excellent
Difficulty level
Moderate
Process Duration
2-4 weeks
Result
Selected Selected

I appeared for an interview before Dec 2023.

Round 1 - Aptitude TestΒ 

Such a nice experience

Round 2 - Coding TestΒ 

Such a nice experience

Round 3 - TechnicalΒ 

(1 Question)

  • Q1. Covered LinkedLists and Trees
Round 4 - One-on-oneΒ 

(1 Question)

  • Q1. Cultural Assessment Round

Interview Preparation Tips

Interview preparation tips for other job seekers - Such a nice experience i had

I appeared for an interview in Mar 2022.

Round 1 - Coding TestΒ 

(1 Question)

Round duration - 60 minutes
Round difficulty - Medium

Mcq + Data structures questions

  • Q1. 

    Maximum Sum Subarray Problem Statement

    Given an array of integers, find the maximum sum of any contiguous subarray within the array.

    Example:

    Input:
    array = [34, -50, 42, 14, -5, 86]
    Output:
    137
    Exp...
  • Ans. 

    Find the maximum sum of any contiguous subarray within an array in O(N) time complexity.

    • Use Kadane's algorithm to find the maximum sum subarray in O(N) time complexity

    • Initialize two variables: max_sum and current_sum to keep track of the maximum sum subarray

    • Iterate through the array and update current_sum by adding the current element or starting a new subarray

    • Update max_sum if current_sum is greater than max_sum

    • Return...

  • Answered by AI
Round 2 - Video CallΒ 

(1 Question)

Round duration - 70 minutes
Round difficulty - Medium

Standard System Design round

  • Q1. Design a Doctor Appointment System and provide some test cases.
Round 3 - Video CallΒ 

(4 Questions)

Round duration - 90 minutes
Round difficulty - Medium

Interview of DSA + OOPS + Databse(SQL query) + Operating System

  • Q1. 

    Left View of a Binary Tree

    Given a binary tree, your task is to print the left view of the tree. The left view of a binary tree contains the nodes visible when the tree is viewed from the left side.

    Inpu...

  • Ans. 

    The task is to print the left view of a binary tree, which contains the nodes visible when the tree is viewed from the left side.

    • Traverse the tree in a level order manner and keep track of the leftmost node at each level.

    • Use a queue to perform level order traversal.

    • Print the leftmost node at each level to get the left view of the binary tree.

  • Answered by AI
  • Q2. What is the difference between CHAR and VARCHAR2 data types in SQL?
  • Ans. 

    CHAR is fixed length while VARCHAR2 is variable length in SQL.

    • CHAR stores fixed length strings, padding with spaces if necessary.

    • VARCHAR2 stores variable length strings, not padding with spaces.

    • CHAR is faster for fixed length data, VARCHAR2 is more flexible for varying length data.

  • Answered by AI
  • Q3. What are the various types of constructors in C++?
  • Ans. 

    There are three types of constructors in C++: default constructor, parameterized constructor, and copy constructor.

    • Default constructor: Constructor with no parameters.

    • Parameterized constructor: Constructor with parameters.

    • Copy constructor: Constructor that initializes an object using another object of the same class.

    • Example: // Default constructor ClassName() {} // Parameterized constructor ClassName(int x, int y) :...

  • Answered by AI
  • Q4. What is the difference between overloading and overriding?
  • Ans. 

    Overloading is having multiple methods in the same class with the same name but different parameters, while overriding is implementing a method in a subclass that is already defined in the superclass.

    • Overloading involves multiple methods with the same name but different parameters.

    • Overriding involves implementing a method in a subclass that is already defined in the superclass.

    • Overloading is resolved at compile time ba...

  • Answered by AI
Round 4 - HRΒ 

(1 Question)

Round duration - 60 minutes
Round difficulty - Easy

Hr round - normal hr questions + situational 

Thoughtworks community discussion

  • Q1. Why should we hire you?

Interview Preparation Tips

Professional and academic backgroundI applied for the job as SDE - 1 in GurgaonEligibility criteriaAbove 7 CGPAThought Works interview preparation:Topics to prepare for the interview - Data Structures, Algorithms, System Design, Aptitude, OOPSTime required to prepare for the interview - 4 monthsInterview preparation tips for other job seekers

Tip 1 : Must do Previously asked Interview as well as Online Test Questions.

Tip 2 : Go through all the previous interview experiences from Codestudio and Leetcode.

Tip 3 : Do at-least 2 good projects and you must know every bit of them.


 

Application resume tips for other job seekers

Tip 1 : Have at-least 2 good projects explained in short with all important points covered.

Tip 2 : Every skill must be mentioned.

Tip 3 : Focus on skills, projects and experiences more.


 

Final outcome of the interviewSelected

Skills evaluated in this interview

I applied via Approached by Company and was interviewed before Mar 2021.Β There were 4 interview rounds.

Round 1 - AssignmentΒ 
Round 2 - Coding TestΒ 

DSA

Round 3 - Group DiscussionΒ 

About Social changes

Round 4 - HRΒ 

(2 Questions)

  • Q1. Tell me about yourself.
  • Q2. Very basic questions

Interview Preparation Tips

Topics to prepare for ThoughtWorks Software Developer interview:
  • DSA
Interview preparation tips for other job seekers - Prepare DSA well and be well with Hands-on in coding

I appeared for an interview before Sep 2020.

Round 1 - Coding TestΒ 

(2 Questions)

Round duration - 90 minutes
Round difficulty - Medium

We were supposed to give test in any time between 3 PM to 9 PM.

  • Q1. 

    Total Unique Paths Problem Statement

    You are located at point β€˜A’, the top-left corner of an M x N matrix, and your target is point β€˜B’, the bottom-right corner of the same matrix. Your task is to calcula...

  • Q2. 

    Subtree Node Count Problem

    We are provided with a tree containing 'N' nodes, numbered from 0 to N-1. The objective is to determine the total number of nodes within each subtree of the provided tree. Speci...

  • Ans. 

    Given a tree with N nodes, find the number of elements in each subtree rooted at every node.

    • Traverse the tree using Depth First Search (DFS) to calculate subtree sizes for each node.

    • Use an array to store subtree sizes for each node, starting with leaf nodes having size 1.

    • The subtree size of a node is the sum of subtree sizes of its children plus 1 for the node itself.

  • Answered by AI
Round 2 - Face to FaceΒ 

(1 Question)

Round duration - 120 minutes
Round difficulty - Medium

Pair Programming Interview( this round is similar to machine coding round) it started around 11 AM

Focus Areas: Problem solving and implementation of extensions.

The pair coding round is focused on OOPS concepts. You are paired with a TWer for this round. They let you code first for an hour and in the next hour they review your code and suggest changes which would improve the code structure, readability and make it modular and reusable and functional.
 

  • Q1. 

    River Crossing: Help Ninja Cross Over

    Ninja stands at the start of a wooden bridge over a river. Some segments of the bridge are damaged. The undamaged segments, marked as 'safe', are listed in an array S...

  • Ans. 

    Check if Ninja can cross the river by jumping from one safe segment to another based on given constraints.

    • Iterate through the 'SAFE' array and check if Ninja can make the required jumps to reach the last safe segment.

    • Ensure that the next jump is either 'X' - 1, 'X', or 'X' + 1 units from the previous jump.

    • Return 'true' if Ninja can successfully cross the river, otherwise return 'false'.

  • Answered by AI
Round 3 - Face to FaceΒ 

(1 Question)

Round duration - 120 minutes
Round difficulty - Medium

Students who were shortlisted from Pair Programming round was selected for this round around 3 PM. In this round there were two interviewer.

  • Q1. 

    Middle of a Linked List

    You are given the head node of a singly linked list. Your task is to return a pointer pointing to the middle of the linked list.

    If there is an odd number of elements, return the ...

Interview Preparation Tips

Professional and academic backgroundI applied for the job as SDE - 1 in GurgaonEligibility criteriaIt was for 2020 undergraduateThought Works interview preparation:Topics to prepare for the interview - Object Oriented Programming, System Design, Operating System, DBMS, Data Structures and Algorithms (Dynamic Programming, Trees, LinkedList)Time required to prepare for the interview - 3 MonthsInterview preparation tips for other job seekers

Tip 1 : Have good grasp on OOPS since they have a round named Pair Programming round which is focused upon this. 
Tip 2 : Write clean, modular and functional code.
Tip 3 : Practice Data Structures and Algorithms
Tip 4 : You should know breadth and depth of whatever is mentioned in your resume.
Tip 5 : Be loud and clear.

Application resume tips for other job seekers

Tip 1 : Make single page resume.
Tip 2 : Mention relevant things on resume.
Tip 3 : Do not put any false things on resume. Projects, internships you are mentioning be ready to answer questions related to it regarding what you solved, idea, databases, design.
Tip 4 : Contribute in open source, participate in hackathons.

Final outcome of the interviewSelected

Skills evaluated in this interview

Top trending discussions

View All
Interview Hub
2w
a team lead
FeedCard Image
Got a question about ThoughtWorks?
Ask anonymously on communities.

Interview questions from similar companies

Interview QuestionnaireΒ 

7 Questions

  • Q1. Tell me about yourself?
  • Q2. Do you know anything about DBMS? Where is it used?
  • Ans. 

    DBMS stands for Database Management System. It is used to manage and organize data in a structured manner.

    • DBMS is used in various industries such as healthcare, finance, education, and more.

    • It helps in creating, modifying, and deleting data in a database.

    • DBMS provides security features to protect data from unauthorized access.

    • Examples of DBMS include MySQL, Oracle, Microsoft SQL Server, and PostgreSQL.

  • Answered by AI
  • Q3. Practical example of object
  • Ans. 

    An object is a self-contained entity that contains data and behavior.

    • Objects are instances of classes

    • They have attributes (data) and methods (behavior)

    • Objects can interact with each other through method calls

    • Example: A car object has attributes like color, make, and model, and methods like start and stop

  • Answered by AI
  • Q4. Practical implementation of sorting
  • Ans. 

    Sorting is the process of arranging data in a particular order.

    • Sorting can be done in ascending or descending order.

    • Common sorting algorithms include bubble sort, insertion sort, and quicksort.

    • Sorting can be done on various data types, including strings, numbers, and objects.

    • Sorting can be done using built-in functions in programming languages such as sort() in JavaScript.

    • Sorting can be optimized for performance by cho...

  • Answered by AI
  • Q5. Difference between C and C++
  • Ans. 

    C is a procedural programming language while C++ is an object-oriented programming language.

    • C++ supports classes and objects while C does not.

    • C++ has better support for polymorphism and inheritance than C.

    • C++ has a larger standard library than C.

    • C++ allows function overloading while C does not.

    • C++ supports exception handling while C does not.

  • Answered by AI
  • Q6. Tell me about yourself
  • Q7. Will your family allow you to move to Hyderabad
  • Ans. 

    Yes, my family is supportive of my career and relocation decisions.

    • My family understands the importance of career growth and is supportive of my decisions.

    • We have discussed the possibility of relocation and they are willing to make the necessary adjustments.

    • They trust my judgment and believe that this move will be beneficial for my career.

    • We have also considered the quality of life in Hyderabad and believe that it will...

  • Answered by AI

Interview Preparation Tips

Round: Test
Experience: Level was pretty high in case of Quant. You not only need a lot of practice but also practice of some really good questions.
Other than quant all the other sections are easy and direct.
Duration: 60 minutes
Total Questions: 45

Round: Group Discussion
Experience: They give 10 mins to think about the topic and 20 mins for discussion. Main purpose is to check your communication skills so keep on discussing . Even if you can't think of any new point repeat your points
Duration: 20 minutes

Round: Technical Interview
Experience: There were many other questions other than this but what they were emphasizing was whether you have done any practical implementation of IT or the coding skills. Tell them about your projects and how you implemented the coding part.They are much interested in logic than syntax.
Since I'm from ECE these were the main things I talked about.

Round: HR Interview
Experience: It was much of an interactive session.They again asked about projects-nothing technical only some basic idea. Lasted hardly 10 mins.

Round: Other Interview
Experience: In this round they mainly explained the salary structure. This one too was of 10 mins.

General Tips: Even if you don't have excellent coding knowledge do appear for the company. They are not looking for same qualities in each candidate. You should be willing enough to learn.
Skills: Aptitude, Communication Skills, Basic Technical Knowledge-mainly emphasized on the implementation part.
College Name: NIT Bhopal
Motivation: The company dates back to 1983 with locations in almost every US state. It is the 43rd company in Fortune 100 US companies. You have options to switch within the departments. Other than this the compensation is 6lpa.

Skills evaluated in this interview

Interview QuestionnaireΒ 

1 Question

  • Q1. Exam was conducted on programmes. 10 questions were asked

ThoughtWorks Interview FAQs

How many rounds are there in ThoughtWorks Software Developer interview?
ThoughtWorks interview process usually has 2-3 rounds. The most common rounds in the ThoughtWorks interview process are Technical, Coding Test and HR.
What are the top questions asked in ThoughtWorks Software Developer interview?

Some of the top questions asked at the ThoughtWorks Software Developer interview -

  1. Code pairing round - you will be given story where you need to add one API to ...read more
  2. Add one API to the existing reposit...read more
  3. question will be from data structure and easy to medium level of the programmin...read more

Tell us how to improve this page.

Overall Interview Experience Rating

4.9/5

based on 7 interview experiences

Difficulty level

Easy 25%
Moderate 75%

Duration

Less than 2 weeks 25%
2-4 weeks 75%
View more

Software Developer Interview Questions from Similar Companies

NetApp Software Developer Interview Questions
3.8
Β β€’Β 6 Interviews
Globant Software Developer Interview Questions
3.6
Β β€’Β 4 Interviews
Movate Software Developer Interview Questions
3.2
Β β€’Β 3 Interviews
Luxoft Software Developer Interview Questions
3.6
Β β€’Β 3 Interviews
View all
ThoughtWorks Software Developer Salary
based on 165 salaries
β‚Ή11.6 L/yr - β‚Ή20 L/yr
52% more than the average Software Developer Salary in India
View more details

ThoughtWorks Software Developer Reviews and Ratings

based on 13 reviews

4.2/5

Rating in categories

4.6

Skill development

4.4

Work-life balance

3.0

Salary

3.4

Job security

4.2

Company culture

2.7

Promotions

3.8

Work satisfaction

Explore 13 Reviews and Ratings
Senior Consultant
980 salaries
unlock blur

β‚Ή18.3 L/yr - β‚Ή36 L/yr

Application Developer
681 salaries
unlock blur

β‚Ή10.1 L/yr - β‚Ή17.4 L/yr

Lead Consultant
319 salaries
unlock blur

β‚Ή30.8 L/yr - β‚Ή55 L/yr

Consultant
312 salaries
unlock blur

β‚Ή12 L/yr - β‚Ή20.9 L/yr

Software Developer
165 salaries
unlock blur

β‚Ή11.6 L/yr - β‚Ή20 L/yr

Explore more salaries
Compare ThoughtWorks with

Synechron

3.5
Compare

Movate

3.2
Compare

Sopra Steria

3.8
Compare

NCR Corporation

3.7
Compare
write
Share an Interview