Sopra Steria Previous Year Coding Questions and Hiring Process
Sopra Steria is a large European IT services company with a significant India presence in Noida, Chennai, and Bengaluru, hiring freshers every year for its Engineer Trainee role through campus and off campus drives. It recruits from B.E./B.Tech CSE and IT backgrounds, and new hires typically sign a three year service agreement as part of the offer.
If you are preparing for Sopra Steria, understanding the flowchart based assessment format, the DBMS heavy technical interview, and the HR round's focus on shift and relocation flexibility will help you prepare efficiently. This guide covers the complete Sopra Steria hiring process along with previous year coding questions asked in its online assessments and interviews.
Sopra Steria Hiring Process
Here is the typical flow for Sopra Steria fresher hiring through campus and off campus drives.
| Stage | What Happens | What They Are Looking For |
|---|---|---|
| A test covering quantitative aptitude, logical reasoning, verbal ability, and technical MCQs. Some drives include a distinct flowchart section where you trace through a flowchart by hand and write down what it outputs, without any answer options given. | Accuracy under time pressure and careful step by step reasoning. |
| Run only in some drives when the candidate pool is large, typically in groups of around ten on a simple or current affairs topic. | Communication and the ability to contribute without dominating. |
| A resume and project walkthrough alongside DBMS and SQL questions, OOP concepts, and sometimes writing code by hand on paper while explaining your thought process aloud. | Depth in database concepts specifically, not just DSA. |
| A conversation about your background, and consistently, your willingness to work night shifts and relocate, including possibly to Europe, as part of the role. | Flexibility and genuine interest in joining. |
Sopra Steria offers typically include a three year service agreement with a bond, so be ready to discuss this openly in your HR round rather than being caught off guard by it.
Assessment Pattern
Format: A proctored online test, sometimes split into a separate technical MCQ section and a flowchart based aptitude section, where you must clear the technical section to proceed to the aptitude section.
Sections typically included:
- Quantitative Aptitude: Profit and loss, percentages, mixtures and allegations, ratio and proportion, simple and compound interest.
- Logical Reasoning and Verbal: Blood relations, directions, geometry, statistics, general knowledge, and verbal ability.
- Technical MCQs: DBMS, C or C++ output prediction, data structures, OOPs, software engineering basics, and basic web technology concepts.
- Flowchart Section: Around 11 fill in the blank questions where you trace a given flowchart by hand and write down its final output, with no options provided.
Some off campus drives report a longer single test instead, around 120 questions in 150 minutes, combining all of the above sections into one sitting.
Sopra Steria Coding Round: What to Expect
The coding questions at Sopra Steria lean toward fundamentals rather than competitive programming difficulty. Frequently reported topics include:
- Array and string basics such as finding the maximum element or counting vowels
- Linked list operations such as removing a node or rotating the list
- Sorting fundamentals such as bubble sort, explained step by step
- Binary search variants such as finding the first and last position of an element
- Tree traversal, including vertical traversal of a binary tree
- Simple pattern printing combined with number sequences like Fibonacci
For hands on practice, use:
Technical Interview Focus Areas
Sopra Steria's technical interview is unusually DBMS and SQL heavy compared to most service companies. Real questions reported by candidates include:
- What is the difference between a primary key and a foreign key, and can a table have more than one primary key.
- Differentiate between DROP, DELETE, and TRUNCATE, including their syntax.
- What is the difference between DBMS and RDBMS, and between SQL and MySQL.
- Why is normalization needed, and explain first, second, third, and Boyce-Codd normal forms.
- What is a Cartesian product. If two tables have 3 and 6 rows, how many rows result from their Cartesian product.
- What is the difference between a Cartesian product and a join.
- Explain left join and right join, and write a query that merges two tables using an inner join.
- How do you rename a column in a query, and what is that operation called.
- What keyword do you use to find unique rows in a table.
- What is a transaction, what is concurrency control, and what problems can arise from transactions.
- Explain the ACID properties of a database.
- What is function overloading, and can you explain all the OOP concepts briefly.
- Explain inheritance, sometimes asked to be written out on paper.
- What is RDBMS, and what were the storage methods used before RDBMS became common.
- If your project used Python, be ready for questions on decorators, generators, the difference between yield and return, and the types of loops available.
- Which programming language do you prefer, and be ready to justify your choice.
- If you were asked to learn a new language such as Ruby, how many days would it realistically take you, and why.
- Which book or resource do you refer to for DBMS concepts.
HR Interview Tips
The HR round checks communication, motivation, and overall fit, and almost always includes a question about shift and relocation flexibility. Common questions include:
- Tell me about yourself.
- What are your strengths and weaknesses.
- Rate yourself out of 10 on your technical knowledge.
- Why should we hire you.
- Are you comfortable working night shifts, and are you open to relocating anywhere in India or even Europe.
- What do you know about Sopra Steria, and why do you want to join.
- Why did you choose the Computer Science branch.
- Tell me about a goal you set for yourself and how you achieved it.
- Tell me about a mistake you made and how you corrected it.
- If you were leading a project team, how would you plan and reach the goal.
- Do you have plans for higher studies.
- Would you prefer a development role or a support role, and why.
- What do you do in your free time, and what are your hobbies.
- Tell me about the city you currently live in, and what it is known for.
- How many other offers do you currently have.
- Walk me through your college's placement procedure.
- If you had to choose, would you pick Sopra Steria over a company like TCS or Amazon, and why.
- Describe a situation where you had to work closely as part of a team.
- How do you handle pressure and tight deadlines.
- Describe a difficult situation you faced at work or in school and how you handled it.
- Tell me about a time you felt like a good leader.
- Tell me about your family background.
- Why do you want to enter the IT field specifically.
- Do you have any questions for us.
Complete HR Interview Questions
Answer the shift and relocation question honestly and directly, it is asked in nearly every drive and interviewers notice hesitation.
Resources to Prepare for Sopra Steria
- Free Aptitude Mock Practice latest patterns and mock tests
- ATS Score Checker and Resume Optimizer
- Roadmaps
- Interview Questions
- Resume Templates
- Free Placement Materials (Google Drive)
- Interview Experience
Sopra Steria Previous Year Coding Questions
Below is a list of Sopra Steria previous year coding questions commonly reported by candidates in the online assessment and technical interview. Each question includes a problem statement, input and output format, and a sample explanation.
1. Best Time to Buy and Sell Stock
Problem Statement: Given an array where each element represents a stock price on a given day, find the maximum profit achievable by buying on one day and selling on a later day.
Input Format:
- An integer array
prices
Output Format:
- The maximum achievable profit, or 0 if no profit is possible
Example:
Input: [7, 1, 5, 3, 6, 4]
Output: 5
2. Longest Substring Without Repeating Characters
Problem Statement: Given a string, find the length of the longest substring that does not contain any repeating characters.
Input Format:
- A string
s
Output Format:
- The length of the longest substring without repeating characters
Example:
Input: abcabcbb
Output: 3
3. Bubble Sort
Problem Statement: Given an array of integers, sort it in ascending order using the bubble sort algorithm.
Input Format:
- An integer array
arr
Output Format:
- The sorted array
Example:
Input: [5, 1, 4, 2, 8]
Output: [1, 2, 4, 5, 8]
4. Print Fibonacci in a Right Triangle Pattern
Problem Statement: Given a number of rows, print the Fibonacci series arranged in a right angled triangle pattern, with one additional term on each row.
Input Format:
- An integer
nrepresenting the number of rows
Output Format:
- The Fibonacci triangle pattern printed row by row
Example:
Input: 3
Output:
0
0 1
0 1 1
5. Remove a Node From a Linked List
Problem Statement: Given the head of a linked list and a value, remove the first node containing that value and return the head of the resulting list.
Input Format:
- A linked list
headand a target value
Output Format:
- The head of the list after removal
Example:
Input: 1 -> 2 -> 3 -> 4, value = 3
Output: 1 -> 2 -> 4
6. Find the Maximum Element in an Array
Problem Statement: Given an array of integers, find the maximum element.
Input Format:
- An integer array
arr
Output Format:
- The maximum element
Example:
Input: [5, 1, 9, 3, 7]
Output: 9
7. Flip 0s and 1s Using Only Arithmetic Operators
Problem Statement: Given a value that is either 0 or 1, flip it to the other value using only arithmetic operators, without using conditional statements.
Input Format:
- An integer
x, either 0 or 1
Output Format:
- The flipped value
Example:
Input: 1
Output: 0
8. Count Vowels in a Word
Problem Statement: Given a word, count the number of vowels in it.
Input Format:
- A string
s
Output Format:
- The count of vowels
Example:
Input: programming
Output: 3
9. Find the Value Equal to Its Index
Problem Statement: Given a sorted array of distinct integers, find a value that is equal to its own index, if one exists.
Input Format:
- A sorted integer array
arr
Output Format:
- The index where
arr[index] == index, or -1 if none exists
Example:
Input: [-5, -3, 0, 3, 4, 7]
Output: 4
10. First and Last Position of an Element in a Sorted Array
Problem Statement: Given a sorted array and a target value, find the first and last index at which the target appears.
Input Format:
- A sorted integer array
arrand a target value
Output Format:
- The first and last index of the target, or -1, -1 if not found
Example:
Input: arr = [5,7,7,8,8,10], target = 8
Output: 3, 4
11. Kth Smallest Element
Problem Statement: Given an unsorted array, find the Kth smallest element.
Input Format:
- An integer array
arrand an integerk
Output Format:
- The Kth smallest element
Example:
Input: arr = [7, 10, 4, 3, 20, 15], k = 3
Output: 7
12. Rotate a Linked List
Problem Statement: Given the head of a linked list and an integer K, rotate the list to the right by K places.
Input Format:
- A linked list
headand an integerk
Output Format:
- The head of the rotated list
Example:
Input: 1 -> 2 -> 3 -> 4 -> 5, k = 2
Output: 4 -> 5 -> 1 -> 2 -> 3
13. Vertical Traversal of a Binary Tree
Problem Statement: Given a binary tree, return its nodes grouped by vertical column, from leftmost column to rightmost column.
Input Format:
- A binary tree
root
Output Format:
- The node values grouped by vertical column
Example:
Input: root = [3,9,20,null,null,15,7]
Output: [9], [3, 15], [20], [7]
14. Consecutive Prime Sum
Problem Statement: Given a number N, count how many prime numbers less than or equal to N can be expressed as a sum of one or more consecutive primes starting from 2.
Input Format:
- An integer
N
Output Format:
- The count of primes up to
Nexpressible as a sum of consecutive primes starting from 2
Example:
Input: N = 17
Output: 2
15. Self Sufficient Book Purchasing
Problem Statement: Given N books, each with a cost and an amount you earn once purchased, find the minimum amount of money you need to borrow upfront to buy all the books in some order, where earnings from earlier purchases can be used to fund later ones.
Input Format:
- An array of book costs and an array of earnings, both of length
N
Output Format:
- The minimum upfront amount needed to eventually buy all books
Example:
Input: earnings = [3, 4, 2], costs = [5, 3, 4]
Output: 3
16. Fountain Activation
Problem Statement: Given a garden represented as a line of length N, and a fountain at every position with a coverage range, find the minimum number of fountains you need to activate so that the entire garden is covered.
Input Format:
- An integer
nand an arraylocationsrepresenting each fountain's reach
Output Format:
- The minimum number of fountains needed to cover the whole garden, or -1 if impossible
Example:
Input: n = 5, locations = [1,2,1,2,1]
Output: 2
17. Street Light Coverage
Problem Statement: Given a road represented as a line of length N, and a streetlight at every position with a coverage range, find the minimum number of streetlights you need to activate so that the entire road is lit.
Input Format:
- An integer
nand an arrayrangerepresenting each streetlight's reach
Output Format:
- The minimum number of streetlights needed to cover the whole road
Example:
Input: n = 6, range = [1,2,1,1,2,1]
Output: 3
18. Party Budget Optimization
Problem Statement: Given a fixed budget and a list of parties, each with an entrance fee and a fun value, select a subset of parties that maximizes total fun value without exceeding the budget.
Input Format:
- An integer
budget, an array of entrance fees, and an array of fun values
Output Format:
- The maximum total fun value achievable within the budget
Example:
Input: budget = 10, fees = [5, 6, 3], fun = [8, 9, 4]
Output: 12
At Last
Sopra Steria weighs database fundamentals more heavily than most service companies, so do not walk into the technical interview having only revised DSA. Practice tracing flowcharts by hand for the aptitude section, revise SQL joins and normalization thoroughly, and answer the shift and relocation question in the HR round honestly and without hesitation.
Join the Telegram group for more resources and discussions.