ServiceNow interview experience Real time questions & tips from candidates to crack your interview

Assistant System Engineer

ServiceNow
upvote
share-icon
4 rounds | 4 Coding problems

Interview preparation journey

expand-icon
Journey
To begin my journey, I think it’s fair to say that my aspirations to reach this role were fueled by my curiosity and willingness to dive deep into each experience, learning as much as possible from each opportunity. I started with the basics, focusing on building a strong foundation in data structures, algorithms, and coding principles. From the outset, I set small goals—learning one algorithm, then trying my hand at some basic coding problems—and gradually progressed to tackling more complex projects.
Application story
I applied for ServiceNow on 21st September 2023 through the on-campus recruitment process. On 28th September, I had my online assessment, which consisted of two DSA questions — one based on graphs and the other on binary search. I was able to fully solve one question and partially solve the other. Later, on 28th September at 10:17 PM, I received an email informing me that my interviews were scheduled for the next day. The email mentioned three rounds, all of which were eliminatory in nature, and I completed all three rounds on the same day.
Why selected/rejected for the role?
I was selected for this role due to my creativity, strong coding skills, and analytical mindset. My ability to think outside the box enabled me to bring fresh perspectives to complex problems, while my coding expertise ensured I could translate those ideas into efficient, high-quality solutions.
Preparation
Duration: 12
Topics: Data Structures and Algorithms, OOPS, DBMS, SQL, Computer Networks, Operating Systems, XML, Kotlin
Tip
Tip

Tip 1 :Practice DSA and give regular contests on leetcode, codestudio etc.
Tip 2 : Make atleast 3 good projects.
Tip 3 :Practice mock interviews.

Application process
Where: Campus
Eligibility: Above 7 CGPA, (Salary Package: 42.9lpa(FTE) and 70k per month (stipend for intern))
Resume Tip
Resume tip

Tip 1: At least add three good projects to your resume, and make sure you know everything about them.
Tip 2: Keep it clean and simple.

Interview rounds

01
Round
Medium
Online Coding Interview
Duration60 minutes
Interview date28 Sep 2023
Coding problem2

On 28th September, I took my online assessment, which consisted of two DSA questions — one on graphs and the other based on binary search. I was able to solve one question and partially solve the other. Later, on 28th September at 10:17 PM, I received an email stating that my interviews were scheduled for the next day.

1. Minimum Jumps

Moderate
25m average time
75% success
0/80
Asked in companies
WalmartDirectiMakeMyTrip

Bob lives with his wife in a city named Berland. Bob is a good husband, so he goes out with his wife every Friday to ‘Arcade’ mall.

‘Arcade’ is a very famous mall in Berland. It has a very unique transportation method between shops. Since the shops in the mall are laying in a straight line, you can jump on a very advanced trampoline from the shop i, and land in any shop between (i) to (i + Arr[i]), where Arr[i] is a constant given for each shop.

There are N shops in the mall, numbered from 0 to N-1. Bob's wife starts her shopping journey from shop 0 and ends it in shop N-1. As the mall is very crowded on Fridays, unfortunately, Bob gets lost from his wife. So he wants to know, what is the minimum number of trampoline jumps from shop 0 he has to make in order to reach shop N-1 and see his wife again. If it is impossible to reach the last shop, return -1.

Problem approach

To solve it, I aimed to find the target value that minimizes the effort to make all locks the same. First, I defined a helper that calculates the cost to adjust each lock to a specific target, considering both direct adjustments and the option to "wrap around" to minimize changes. Using binary search, I then explored potential target values, starting with edge cases and iteratively refining the target to find the one that yields the lowest overall cost. This efficient approach narrows down possibilities quickly, leading to the minimum operations needed to align all locks.

Try solving now

2. Path visiting all nodes

Hard
45m average time
55% success
0/120
Asked in companies
HCL TechnologiesUrban Company (UrbanClap)Apple

You are given a connected undirected unweighted graph of ‘N’ nodes and ‘M’ edges, such that there is only one undirected edge between any two nodes and no self-loop. Your task is to find the length of the shortest path that visits all ‘N’ nodes at least once.

Note :

1) Here length of the path refers to the number of edges in that path.
2) You can start and stop at any node.
3) You can visit any node 0 or more times.
4) You can use any given edge 0 or more times.
Problem approach

To solve this problem, I used depth-first search (DFS) to calculate the minimum and maximum sum of distances when values in a tree are shuffled. For the minimum sum, I aimed to minimize the distances by assigning values to the closest possible nodes without repeating any initial values. This involves identifying and traversing only necessary paths to reduce redundant moves, particularly focusing on nodes that aren't leaves. For the maximum sum, I maximized the distances by assigning values as far apart as possible within the tree's structure. By carefully counting and adding the distances for both configurations, I obtained the required minimum and maximum sums of distances in an efficient way.

Try solving now
02
Round
Medium
Video Call
Duration60 minutes
Interview date29 Sep 2023
Coding problem1

I was asked about my projects, OOPS and one question on Problem-solving (i.e. DSA) was asked. I was told to code some parts of my project and to explain how I used OOPS in that project by creating different classes. I was also asked to define inheritance and polymorphism.

1. Swapping Nodes in a Linked List

Moderate
25m average time
80% success
0/80
Asked in companies
AmazonMicrosoftServiceNow

You are given a head node of linked list ‘head’ and an integer ‘K’. You have to swap the ‘K’ node from the beginning and the ‘K’ node from the end.

You need to return the head of the updated linked list.

Note:
You need to perform swapping of nodes in the given linked list. Do not swap the values.
For example:
If the given list is:[1 -> 4 -> 5 -> 6 -> 9 -> NULL] and ‘K’ is 2, then after swapping 2nd node from the start i.e, 4 with 2nd node from the end i.e, 6 we get the final list as: [1 -> 6 -> 5 -> 4 -> 9 -> NULL].
Problem approach

To solve this problem, the approach involves identifying the nodes that need to be swapped by their positions from the beginning and the end of the linked list. First, traverse the list to determine its length, which helps locate the `k`th node from the beginning and the `k`th node from the end. Specifically, the `k`th node from the end can be found at position `(length - k + 1)`. After determining these positions, traverse the list again to reach these nodes. Once both nodes are identified, simply swap their values rather than their positions, which avoids restructuring the list. Finally, return the head of the linked list, as the list structure remains the same, with only the values swapped. This method ensures efficiency by only requiring two traversals, making it an optimal solution.

Try solving now
03
Round
Medium
Face to Face
Duration60 minutes
Interview date29 Sep 2023
Coding problem1

In this round, I was asked about my projects, DBMS, and OOPS concepts. I was also asked to write two SQL queries and solve two DSA problems. Additionally, he asked me about multiple inheritance, function overloading, and function overriding.

 

1. Roman Numeral To Integer

Easy
15m average time
85% success
0/40
Asked in companies
UberFacebookAdobe

You are given a string 's' that represents a Roman number. Convert the Roman number to an integer and return it.


Roman numerals are represented by seven different symbols: I, V, X, L, C, D, and M.


Table of values:
Symbol       Value
I             1
V             5
X             10
L             50
C             100
D             500
M             1000
For example:
3 is written as III in Roman numeral, just three ones added together. 13 is written as XIII, which is simply X + III. The number 25 is written as XXV, which is XX + V 
Problem approach

To solve this problem, I first mapped each Roman numeral character to its respective integer value for easy reference. Then, I iterated through the characters of the Roman numeral string to apply the conversion rules. For each character, I checked if its value was smaller than the value of the next character, indicating a subtractive combination (like "IV" representing 4). In such cases, I subtracted its value from the running total; otherwise, I added its value to the total. By the end of the traversal, the accumulated result represented the integer value of the Roman numeral. This approach allowed for efficient handling of both additive and subtractive cases in a single pass.

Try solving now
04
Round
Medium
HR Round
Duration60 minutes
Interview date29 Nov 2024
Coding problem0

I expected behavioral and situational questions in this round, but it was completely different from what I had anticipated. She started with my introduction and then asked me about the core subjects I know and why I chose the ECE-AI branch. She also asked if I was comfortable switching to new tech stacks and why I would like to join ServiceNow.

Then, she asked how I would design BookMyShow if given the opportunity. She encouraged me to use my creativity and did not ask about any system design concepts. She inquired about how many classes I would use and asked me to define those classes with the necessary properties. We had a detailed discussion on how I would handle payments, reviews, and ratings, and how many tables I would use for those. We also discussed what would happen if I combined the reviews and ratings tables.

Additionally, she asked how many types of APIs I am familiar with and inquired about Firebase Cloud Messaging. At the end, she provided feedback on areas where I could improve.

Here's your problem of the day

Solving this problem will increase your chance to get selected in this company

Skill covered: Programming

What is recursion?

Choose another skill to practice
Similar interview experiences
SDE - 1
4 rounds | 7 problems
Interviewed by ServiceNow
3463 views
0 comments
0 upvotes
Associate Software Engineer
4 rounds | 5 problems
Interviewed by ServiceNow
2242 views
0 comments
0 upvotes
SDE - Intern
1 rounds | 2 problems
Interviewed by ServiceNow
1263 views
0 comments
0 upvotes
Associate Software Engineer
3 rounds | 3 problems
Interviewed by ServiceNow
1086 views
0 comments
0 upvotes