servicenow logo

Servicenow Interviews

33 experiences1,018 reads175 questions21% success rate
ServiceNow QA Intern OA | Complete Breakdown (Tier-3 | College Shortlist)
servicenow logo
Servicenow
QA Intern
November 29, 202559 reads

Summary

I recently completed the ServiceNow QA Intern Online Assessment, which proved to be far more challenging and comprehensive than I anticipated for an intern role. The assessment covered a wide array of topics, from DSA and automation to databases and prompt engineering, offering a humbling and insightful experience.

Full Experience

Assessment Structure

I recently took the ServiceNow QA Intern Online Assessment, and honestly, I went in thinking it would be a straightforward, conceptual test like 'Tell me what Agile is'. However, the current job market must be incredibly competitive because the OA felt like I was interviewing for a full engineering role! It covered everything from HashMap scheduling and Selenium automation in Java to complex 3-table SQL joins, Jenkins pipelines, and even prompt-engineering test cases—all for an intern position.

It was both hilarious and incredibly humbling at the same time. I started as a student but finished the assessment feeling like the industry now expects interns to be proficient in coding, testing, deploying, automating, optimizing, debugging, and maybe also making coffee. Nevertheless, it was a very memorable and humbling experience.

Interview Questions (4)

Q1
HashMap Scheduling Logic
Data Structures & AlgorithmsMedium

The problem involved applying HashMap data structure principles combined with scheduling-based logic to solve a coding challenge. It was pretty straightforward.

Q2
Automate Web Form using Selenium WebDriver in Java
OtherMedium

I was tasked with writing Java code to automate interactions with a web form, specifically using Selenium WebDriver to perform the necessary actions. I honestly wasn't expecting a pure automation coding question.

Q3
SQL Query: Joins and Aggregation with Conditions
OtherHard

I was presented with three database tables and had to write a SQL query involving multiple joins and aggregation functions, including GROUP BY with specific conditions. This query was pretty lengthy and slightly complex.

Q4
Prompt Engineering: Mask Private Info in Emails
OtherMedium

The final section featured a prompt engineering question. I was asked to design a solution to mask private information found in emails, acting in the capacity of a bank employee.

ServiceNow | IC2 | Interview
servicenow logo
Servicenow
SDE IRejected
November 27, 2025133 reads

Summary

I had an interview with ServiceNow for an IC2 role. The first round consisted of a resume discussion followed by two DSA problems, both of which I solved. However, I was later informed that I would not be moving forward with other candidates.

Full Experience

HR reached out to me for an interview opportunity at ServiceNow. The interview process began with a Round 1. This round started with a 15-minute discussion about my resume and previous experience. Following that, for the remaining 45 minutes, I was given two Data Structures and Algorithms (DSA) problems to solve. I successfully solved both problems completely. A week later, I received an email stating that I would not be moving forward with other candidates.

Interview Questions (2)

Q1
Split Array Largest Sum
Data Structures & AlgorithmsHard

Given an array nums which consists of non-negative integers and an integer k, you need to split the array into k non-empty continuous subarrays. Write an algorithm to minimize the largest sum among these k subarrays.

Q2
Degree of an Array
Data Structures & AlgorithmsMedium

Given a non-empty array of non-negative integers nums, the degree of this array is defined as the maximum frequency of any one of its elements. Your task is to find the smallest possible length of a (contiguous) subarray of nums that has the same degree as nums.

ServiceNow USA Staff Offer
servicenow logo
Servicenow
Staff Software EngineerusaOffer
November 22, 202563 reads

Summary

I interviewed for a Staff Software Engineer role at ServiceNow and successfully received an offer after navigating through a hiring manager screen and a comprehensive onsite loop. The interviews covered coding challenges, system design, and behavioral questions.

Full Experience

I recently interviewed for a Staff Software Engineer role at ServiceNow. The process started with a Hiring Manager Screen, which lasted about 60 minutes. This round included some behavioral questions, discussions about my work experience, my role, and the impact I've made. I was also asked to solve 2-3 coding questions which were quite straightforward. I had to implement a linked list and add several APIs to support use cases such as removing all duplicates and reversing a sublist given start and end indices.

The onsite interviews consisted of multiple rounds:

  • Coding Round 1: I faced 1-2 behavioral questions. The main coding problem was a stock question with follow-ups: Given a list of stock prices, I needed to find the maximum profit if at most 2 transactions were allowed. The interviewer wanted a recursive solution first, followed by an optimized version. The follow-up extended this to allow max 'k' transactions. This is a standard DP problem, and I explained a memoization approach using a HashMap as a cache instead of a 2D table.
  • Coding Round 2: Again, there were 1-2 behavioral questions. The coding challenge involved a company hierarchy represented as a binary tree, where I had to find the most relevant common department, which translates to finding the Lowest Common Ancestor. We then discussed what if the tree was an n-ary tree and talked about various optimization techniques.
  • System Design Round: This round started with 2 behavioral questions. The system design problem prompt was displayed on a whiteboarding tool. It described a complex system involving uploading, supporting multiple GET endpoints, and orchestration aspects. We delved into design choices, tradeoffs, scalability, and monitoring. A significant portion of the discussion revolved around security aspects and access controls. I noted that I didn't have deep expertise in security-related conversations, and the interviewer probed to gauge my understanding in this area, as the team was particularly focused on security.

A week after my interviews, the hiring manager reached out, informing me that the feedback was positive and there was no need for an additional hiring manager round. They extended an offer. I must say, the hiring manager was one of the nicest people I've met throughout this process, and I thoroughly enjoyed my conversations with all the interviewers. There was a slight hiccup in one of the coding interviews related to language, which I mentioned to the hiring manager, anticipating it might affect the outcome, but it didn't.

Interview Questions (3)

Q1
Linked List API with Duplicate Removal and Sublist Reversal
Data Structures & Algorithms

I was asked to code up a linked list and add multiple APIs to support use cases such as modifying the list by removing all duplicates, and reversing a sublist given a start and end index.

Q2
Max Profit from Stock Transactions (at most 2, then k)
Data Structures & AlgorithmsHard

Given a list of stock prices, find the maximum profit if at most 2 transactions are allowed. The interviewer wanted me to write the recursive solution first and then optimize it later. The follow-up was to extend this to max 'k' transactions.

Q3
Lowest Common Ancestor in Company Hierarchy
Data Structures & AlgorithmsMedium

Given a company hierarchy in the form of a binary tree, find the most relevant common department, which translates to finding the Lowest Common Ancestor. The follow-up discussion was about how to handle this if the tree was an N-ary tree.

ServiceNow | Staff Engineer | Interview Experience | Hyd | Data Analytics Team
servicenow logo
Servicenow
Staff EngineerHyderabad10 yearsRejected
October 13, 202585 reads

Summary

I applied for a Staff Engineer role at ServiceNow in Hyderabad. While I performed well in the initial two rounds, the third round was disorganized and ultimately led to a frustrating experience, resulting in no offer.

Full Experience

I applied for the Staff Engineer position at ServiceNow in Hyderabad through LinkedIn, bringing 10 years of experience to the table.

Round 1: Technical Interview

This round began with questions about my current work and projects. For the DSA part, I was given a problem focused on finding disconnected components in a graph, which I successfully solved using DFS. The feedback from this round was positive.

Round 2: Technical Interview

The second round also started strong. I was asked a DSA problem to find the number of paths from the top-left to the bottom-right of a grid with obstacles, which I solved using DFS. Following this, we moved to System Design, where I was tasked with designing an analytics platform. The requirements included moving data from various sources like MongoDB and RDS to an OLAP database for analytical queries. We discussed data ingestion pipelines, ETL processes, and strategies for query optimization. I received positive feedback for this round as well.

Round 3: Technical Interview

Unfortunately, the third round did not go as smoothly. The interviewer seemed unprepared and lacked clarity on what they wanted to assess. They randomly asked questions about ACID properties and various database concepts, frequently jumping to new topics before I could fully complete my answers. About 20 minutes into the interview, they asked me to design a Web Crawler. I had practiced this problem before and knew the approach, but the interviewer wasn't actively listening to my proposed solution. Instead, they kept asking unrelated questions that didn't align with my design. Every time I tried to clarify the requirements, they would move on to the next question without fully understanding my point. Midway through, I started to lose interest and stopped engaging fully due to the disjointed nature of the discussion.

Interview Questions (4)

Q1
Find Disconnected Components in a Graph
Data Structures & Algorithms

Find and identify all disconnected components within a given graph.

Q2
Number of Paths in a Grid with Obstacles
Data Structures & Algorithms

Given a grid that may contain obstacles, find the number of unique paths from the top-left corner to the bottom-right corner. Obstacles block paths.

Q3
Design an Analytics Platform
System Design

Design an analytics platform capable of moving data from diverse sources such as MongoDB and RDS into an OLAP database for efficient analytical querying. The discussion should cover data ingestion pipelines, ETL processes, and strategies for query optimization.

Q4
Design a Web Crawler
System Design

Design a scalable and robust web crawler system.

ServiceNow | SSE | R-1
servicenow logo
Servicenow
SDE II6.3 yearsOngoing
September 26, 202550 reads

Summary

I recently interviewed for an SSE role at ServiceNow. My first round was a technical session that included two LeetCode problems.

Full Experience

I applied for a Senior Software Engineer (SSE) position at ServiceNow through their careers website. With 6.3 years of experience, I moved to the first round, which was a 1-hour technical interview. During this round, I was presented with two coding challenges.

Interview Questions (2)

Q1
Generate Parentheses
Data Structures & AlgorithmsMedium

Given n pairs of parentheses, write a function to generate all combinations of well-formed parentheses.

Q2
All Paths From Source to Target
Data Structures & AlgorithmsMedium

Given a directed acyclic graph (DAG) of n nodes labeled from 0 to n - 1, find all possible paths from node 0 to node n - 1, and return them in any order.

Servicenow Interview Experience (IC2)
servicenow logo
Servicenow
SDE IOffer
August 27, 202570 reads

Summary

I recently interviewed at Servicenow for an IC2 role and successfully received an offer after completing four rounds of technical and behavioral assessments.

Full Experience

My interview process at Servicenow for the IC2 position consisted of four rounds. The first round focused on data structures and algorithms, where I was given two coding problems. The second round also involved DSA, along with some JavaScript conceptual questions. The third round included a string-based coding question and a discussion about my past experience. Finally, the fourth round was a system design interview followed by more behavioral questions and a review of my professional background. I was excited to receive an offer!

Interview Questions (4)

Q1
Remove Nth Node From End of List
Data Structures & AlgorithmsMedium

Given the head of a linked list, remove the nth node from the end of the list and return its head.

Q2
Linked List Cycle
Data Structures & AlgorithmsEasy

Given head, the head of a linked list, determine if the linked list has a cycle in it.

Q3
Linked List Cycle II
Data Structures & AlgorithmsMedium

Given the head of a linked list, return the node where the cycle begins. If there is no cycle, return null.

Q4
Design Database for Multi-Stage Evaluation System
System DesignHard

Design a database for a system that manages entities with multiple stages, evaluations, and results over time, supporting repeated attempts and outcomes at different stages.

ServiceNow | SSE | Hyd
servicenow logo
Servicenow
Senior Software EngineerHyd6 years
August 14, 20254 reads

Summary

I interviewed for a Senior Software Engineer role at ServiceNow in Hyderabad, which consisted of multiple rounds covering DSA, LLD, HLD, Java concepts, and behavioral questions. Despite a positive performance in the initial rounds, I received negative feedback on the High-Level Design round, ultimately leading to rejection, and experienced poor communication from HR.

Full Experience

ServiceNow | Senior Software Engineer | Interview Experience

Applied via Referral Current: 6 YEO | PBC

Round 1: Asked questions about current work and projects Java Concepts Two DSA Problems i. Minimum Increment to Make Array Unique ii. Another question on array (I don't remember) Feedback - Positive

Round 2: Java Concepts DSA - Something similar to Stock Buy & Sell LLD - Design a book lending system Feedback - Positive

Round 3: Detailed discussion on projects and resume scanning Java Concepts HLD - Design a notification system - asked a lot of follow up questions related to tech that was not on my resume (He wanted to ask questions about the tech used in their system) Some behavioural questions Feedback - Negative (Obviously, HLD did not go well)

Got the worst HR, she didn't know anything about the focus areas of the interviews. When asked, said that she is not aware of these details. Post R3, HR ghosted me for 2 weeks. After multiple follow ups, I got the feedback.

Piece of advise: Make sure you have a tech recruiter in loop, not just a TA.

Posting these details here so that others can be better prepared.

Interview Questions (3)

Q1
Minimum Increment to Make Array Unique
Data Structures & Algorithms

Given an array of integers A, a move consists of choosing any A[i] and incrementing it by 1. Return the minimum number of moves to make every value in A unique.

Q2
Design a Book Lending System
System Design

Design a Low-Level Design (LLD) for a book lending system.

Q3
Design a Notification System
System Design

Design a High-Level Design (HLD) for a notification system. This involved follow-up questions related to technologies not on my resume, as the interviewer seemed interested in the tech used in their own system.

ServiceNow Associate Software Engineer Intern | Interview Experience
servicenow logo
Servicenow
Associate Software Engineer Intern
August 4, 20253 reads

Summary

I interviewed for an Associate Software Engineer Intern position at ServiceNow and was selected. The process included an online assessment and three technical rounds covering data structures, algorithms, and projects, with specific questions on topics like AVL trees, linked lists, and dynamic programming.

Full Experience

Interview Process:

1. Online Assessment:

  • 3 problems: Difficulty was LeetCode Medium, Medium & Hard.

2. Technical Round 1:

  • Introduction & Resume Discussion (5 mins).
  • Asked about AVL Tree.
  • A linked list problem: Reverse two segments of a linked list.
  • A math puzzle.

3. Technical Round 2:

  • Introduction & Project Discussion (10 mins).
  • Basic questions related to ML and JavaScript (5 mins).
  • A DSA problem, a slight modification of Kadane's Algorithm.
  • A DP problem, a variation of the Minimum Sum Path on a grid with 2 follow-ups.

4. Technical Round 3:

  • Project Discussion and Development-related questions (10 mins).
  • A string-related problem (25 mins).
  • I was asked to implement all DSA problems and run them on an online compiler. Interviewers provided edge cases.

Result:

Selected

Compensation:

89K per month for 2 months.

Interview Questions (4)

Q1
AVL Tree Concepts
Data Structures & Algorithms

Discussion on AVL Tree properties, rotations, and operations.

Q2
Reverse Two Segments of a Linked List
Data Structures & AlgorithmsMedium

Given a linked list, reverse two specific segments of it.

Q3
Kadane's Algorithm Variation
Data Structures & AlgorithmsMedium

A DSA problem that was a slight modification of Kadane's Algorithm.

Q4
Minimum Sum Path on Grid Variation
Data Structures & AlgorithmsMedium

A dynamic programming problem, a variation of the Minimum Sum Path on a grid, followed by two follow-up questions.

Preparation Tips

DSA Experience:

  • Had prior knowledge of topics like Stack, Queues, Binary Search, Number Theory, Bit Manipulation, Trees (Generic Trees), Graphs, and DP (excluding advanced concepts like Digit DP and DP with Bitmask).
  • Learned interview-specific topics like Linked Lists and Binary Trees within 15 days before the interview.

Competitive Programming:

  • Peak Specialist on Codeforces.
  • Active in competitive programming for a long time on Codeforces, CodeChef, and occasionally on Atcoder.

Development Experience:

  • Below average in development.
  • Familiar with Python and JavaScript.
  • Created a few ML projects.
  • Developed a web server in C++.
SSE ServiceNow (Hyderabad) - May'25
servicenow logo
Servicenow
SDE IIHyderabad
July 21, 20253 reads

Summary

I interviewed for an SSE position at ServiceNow in Hyderabad. I encountered a LeetCode coding problem in Round 1 and could not provide an optimal solution, which likely led to a rejection.

Full Experience

Round1: https://leetcode.com/problems/smallest-subsequence-of-distinct-characters/description/ I could not come up with the optimal solution. Likely a Reject. Applied through Careers page.

Interview Questions (1)

Q1
Smallest Subsequence of Distinct Characters
Data Structures & Algorithms

Solve the problem: Smallest Subsequence of Distinct Characters.

ServiceNow SSE (IC3) Interview Experience
servicenow logo
Servicenow
SSE (IC3)Hyderabad5 years
July 17, 20254 reads

Summary

I interviewed for a Staff Software Engineer (IC3) position at ServiceNow. The process included coding rounds with dynamic programming problems, a system design discussion focusing on AWS latency, and a complex custom DSA problem, though I did not pass the final coding/system design round.

Full Experience

Hi all,

YOE: 5 (Java) Current Location: Hyderabad

Round 1: Simple DP based questions https://leetcode.com/problems/unique-paths/description/ and the follow up https://leetcode.com/problems/unique-paths-ii/description/. Quesitons on the project from resume and a little dive on them

Round 2: HR told me it would be a Coding + System Design.

Interviewer started with AWS services based questions like if we an API and a lambda integrated with it and the API is experiencing high latency what can be the issue causing high latency if there is no issue on Lambda side. How would you optimise your API if we are not allowed to improve memory/performance on lambda side.

DSA Question: https://leetcode.com/problems/maximum-coins-from-k-consecutive-bags/ (Don't know how they selected the question :|) After the first read question seemed a little tricky. Started discussing a Brute Force Approach by using an array to store coins on each coordinate of number line. Interviewer asked to improve on the space complexity as it is mentioned in the question that the number line can be infinte. Tried optimising but could not code the approach that I came up with afterwards.

P.S.- Haven't heard back after this round but doesn't seem will pass this round

Interview Questions (4)

Q1
Unique Paths
Data Structures & Algorithms

Simple DP based question.

Q2
Unique Paths II
Data Structures & Algorithms

Follow up to Unique Paths.

Q3
Optimizing API Latency with AWS Lambda
System Design

If an API integrated with a Lambda is experiencing high latency, what could be the issue causing high latency if there is no issue on the Lambda side? How would you optimise your API if you are not allowed to improve memory/performance on the lambda side.

Q4
Maximum Coins From K Consecutive Bags
Data Structures & Algorithms

DSA Question: The problem seemed a little tricky. I started discussing a Brute Force Approach by using an array to store coins on each coordinate of a number line. The interviewer asked to improve on the space complexity as it is mentioned in the question that the number line can be infinite. I tried optimising but could not code the approach that I came up with afterwards.

ServiceNow | Interview Experience | IC-2 | Ghosted
servicenow logo
Servicenow
IC-24.5 years
July 14, 20252 reads

Summary

I interviewed for an IC-2 role at ServiceNow, completing two rounds of interviews focusing on DSA and System Design. Despite receiving positive feedback, I was ultimately ghosted by the recruiter.

Full Experience

YOE: 4.5 Recruiter reached out directly.

Round 1: DSA 1st question was a variation of: https://leetcode.com/problems/string-compression-iii/description/ Had to implement a search functionality, did it with binary search 2nd Question: https://leetcode.com/problems/wiggle-subsequence/description/

Round 2: DSA+System Design 1st Question was a hard DP question. A variation of https://leetcode.com/problems/count-palindromic-subsequences/description/

2nd Question: Design Instagram.

Received positive feedback for both rounds, recruiter told the HM round will be scheduled soon but then ghosted.

Interview Questions (4)

Q1
String Compression III Variation with Search
Data Structures & Algorithms

A variation of the String Compression III problem from LeetCode (link provided). The task involved implementing a search functionality.

Q2
Wiggle Subsequence
Data Structures & Algorithms

The problem was to find the length of the longest wiggle subsequence, as described in the provided LeetCode problem link.

Q3
Count Palindromic Subsequences Variation (Hard DP)
Data Structures & AlgorithmsHard

A hard Dynamic Programming question, specifically a variation of the 'Count Palindromic Subsequences' problem from LeetCode.

Q4
Design Instagram
System Design

System design question focused on designing Instagram.

ServiceNow Women Tech Hiring Challenge Interview Experience - Nov 2024
servicenow logo
Servicenow
July 9, 20252 reads

Summary

I participated in the ServiceNow Women Tech Hiring Challenge, clearing the Online Assessment round which included three coding problems. I advanced to a DSA round where I was asked a 'valid Sudoku' question but was unable to solve it, leading to my rejection.

Full Experience

Hi, I registered for Hackerrank challenge in ServiceNow Women Tech Hiring Challenge.

1st Round - OA(Online Assessment)
Duration - 105 minutes , No. of Questions - 3
There were total of 3 questions and all were coding problems.
First question was something related to Binary Trees which I was not able to solve.
Second question was there was a binary integer array was given and we have to flip it based on some condition. I don't remember exactly the question but I was able to solve it and there were some error I was resolving it but then time was up.
Third question was based on string it was quite easy I was able to solve it quickly.

After few days I got a mail confimation saying that I have cleared the OA round and I'm moved to next stage of the process.

My interview was scheduled within few days.

2nd Round - DSA Round

I was asked valid Sudko question I was not able to solve this.

Verdict - Rejected.

Interview Questions (1)

Q1
Valid Sudoku
Data Structures & Algorithms

I was asked the 'Valid Sudoku' question during the DSA round.

ServiceNow coding interview round for System Engineer and Senior System Engineer
servicenow logo
Servicenow
System Engineer and Senior System Engineer
June 21, 20255 reads

Summary

I gave a coding interview round for ServiceNow for System Engineer and Senior System Engineer roles on June 20th. The test was conducted on HackerRank and involved one coding problem, 'Longest Subarray', which I was unable to solve.

Full Experience

Hi, gave a coding interview round for service Now on 20th june for System Engineer and Senior System Engineer role

the test was conducted on hacker rank. Only one problem(not sure if their were others , was not able to solve this.)

Problem: Longest Subarray a subarray of array a is defined as a contiguous block of a’s elements having a length that is less than or equal to the length of the array. For example, the subarrays of array a = {1, 2, 3} are [1], [2], [3], [1, 2], [2, 3], and [1, 2, 3].

Given an integer k = 3, the subarrays having elements that sum to a number ≤ k are [1], [2], and [1, 2]. The longest of these subarrays is [1, 2], which has a length of 2.

Given an array a, determine the longest subarray that sums to less than or equal to a given value k.

Interview Questions (1)

Q1
Longest Subarray Sum Less Than or Equal to K
Data Structures & AlgorithmsMedium

A subarray of array a is defined as a contiguous block of a’s elements having a length that is less than or equal to the length of the array. For example, the subarrays of array a = {1, 2, 3} are [1], [2], [3], [1, 2], [2, 3], and [1, 2, 3].

Given an integer k = 3, the subarrays having elements that sum to a number ≤ k are [1], [2], and [1, 2]. The longest of these subarrays is [1, 2], which has a length of 2.

Given an array a, determine the longest subarray that sums to less than or equal to a given value k.

ServiceNow IC2 | HM Round Interview – JavaScript Deep Flatten + Type Grouping (with a Catch)
servicenow logo
Servicenow
June 11, 20252 reads

Summary

I had a Hiring Manager round interview at ServiceNow, where I was presented with a challenging JavaScript problem involving deep flattening an array, grouping its elements by type, and counting the frequency of unique values within each type. I successfully navigated the problem, including debugging a runtime error and addressing several follow-up questions, which led to a positive outcome.

Full Experience

💼 HM Round Interview – JavaScript Deep Flatten + Type Grouping (with a Catch)


🔹 Part 1: Main Problem Asked

"You're given a deeply nested array with all kinds of values (numbers, strings, booleans, null, undefined, functions, symbols, objects).
Write a function that:

  • ✅ Deep flattens the array
  • ✅ Groups elements by their JavaScript typeof
  • ✅ Tracks the frequency count of each unique value within that type (This was the followup of the main question)

🔸 Sample Input:

const input = [1, 'a', [true, ['b', undefined], [{} , null]], () => {}, Symbol('x')];

🔸 Expected Output:

{
  number: { '1': 1 },
  string: { 'a': 1, 'b': 1 },
  boolean: { 'true': 1 },
  undefined: { 'undefined': 1 },
  null: { 'null': 1 },
  object: { '[object Object]': 1 },
  function: { '() => {}': 1 },
  symbol: { 'Symbol(x)': 1 }
}

🔹 Part 2: Follow-Up Challenge – Runtime Error & Fix

While implementing this, I hit a TypeError:

Cannot read properties of undefined (reading '1')


🐞 Root Cause:

if (!result[key]) {
  result[key] = {};
}

❌ Incorrect check — I was initializing based on key (the value),
but should have checked result[type] instead (the group).


✅ Corrected Code:

if (!result[type]) {
  result[type] = {};
}

🔍 Bonus Follow-Ups Asked:

  • Why does typeof null === 'object'?
    → Legacy bug. I handled it using: item === null ? 'null' : typeof item.
  • How did you stringify symbols safely for keys?
    → Used item.toString() for Symbol(x) values.
  • What if you needed to keep raw values instead of string keys?
    → Suggested using a Map or { value, count } objects instead of stringified keys.

✅ Outcome:

Handled edge cases, debugging, and recursion with safe typing and clean grouping logic.


Both versions of the solution:


✅ 1. With Frequency Count

function deepFlattenAndGroupByTypeWithFrequency(input) {
  const result = {};

function recurse(arr) { for (const item of arr) { if (Array.isArray(item)) { recurse(item); // handle nested arrays } else { const type = item === null ? 'null' : typeof item; const key = typeof item === 'symbol' ? item.toString() : String(item);

    if (!result[type]) {
      result[type] = {};
    }

    result[type][key] = (result[type][key] || 0) + 1;
  }
}

}

recurse(input); return result; }

🔸 Output Example:

{
number: { '1': 2 },
string: { 'a': 2, 'b': 1 },
boolean: { 'true': 2 },
undefined: { 'undefined': 1 },
null: { 'null': 1 },
symbol: { 'Symbol(x)': 2 }
}

✅ 2. Without Frequency Count (Just grouping by type)

function deepFlattenAndGroupByType(input) {
const result = {};

function recurse(arr) { for (const item of arr) { if (Array.isArray(item)) { recurse(item); } else { const type = item === null ? 'null' : typeof item;

    if (!result[type]) {
      result[type] = [];
    }

    result[type].push(item);
  }
}

}

recurse(input); return result; }

🔸 Output Example:

{
number: [1, 1],
string: ['a', 'a', 'b'],
boolean: [true, true],
undefined: [undefined],
null: [null],
symbol: [Symbol('x'), Symbol('x')]
}

Interview Questions (1)

Q1
JavaScript Deep Flatten and Type Grouping with Frequency Count
Data Structures & Algorithms

You're given a deeply nested array with all kinds of values (numbers, strings, booleans, null, undefined, functions, symbols, objects).
Write a function that:

  • ✅ Deep flattens the array
  • ✅ Groups elements by their JavaScript typeof
  • ✅ Tracks the frequency count of each unique value within that type (This was the followup of the main question)

🔸 Sample Input:

const input = [1, 'a', [true, ['b', undefined], [{} , null]], () => {}, Symbol('x')];

🔸 Expected Output:

{
number: { '1': 1 },
string: { 'a': 1, 'b': 1 },
boolean: { 'true': 1 },
undefined: { 'undefined': 1 },
null: { 'null': 1 },
object: { '[object Object]': 1 },
function: { '() => {}': 1 },
symbol: { 'Symbol(x)': 1 }
}

ServiceNow IC2 – Interview Experience R1
servicenow logo
Servicenow
Software Engineer (IC2)
June 5, 20253 reads

Summary

I interviewed for a Software Engineer (IC2) position at ServiceNow, completing a technical round that covered DSA, JavaScript, React, and CS fundamentals. I successfully presented optimal solutions for coding problems and provided detailed explanations for conceptual questions.

Full Experience

Interview experience for Round 1 (R1) – ServiceNow IC2 position

Position: Software Engineer (IC2) Company: ServiceNow Round: R1 – Technical Coding + Concepts Background: I currently work as a Machine Learning Quality Engineer, prepping for a software engineer transition.


Round Format

  • Live online technical round
  • Topics: DSA, JavaScript, React, CS fundamentals
  • Coding on a shared editor (JavaScript)

Questions & My Approach

1. Next Greater Element to the Right

  • Question: Given an array, print for each element its next greater element to the right (or -1 if none exists). Example: [11, 13, 21, 3][13, 21, -1, -1]

  • My Approach:

    • Explained both brute-force (O(n²)) and optimal stack (O(n)) solutions.
    • Implemented the monotonic stack solution in JavaScript—clean, commented, CP-style.
    • Discussed edge cases like decreasing sequences and duplicates.
    • Provided reasoning and time/space complexity.

2. First Missing Positive Integer

  • Question: Given an unsorted array, find the smallest missing positive integer starting from 1, in O(n) time and O(1) space. Example: [2, 3, -7, 6, 8, 1, -10, 15]4

  • My Approach:

    • Described classic O(n) in-place hashing (index marking) approach.
    • Walked through a dry run, showed how negatives and out-of-bounds numbers are handled.
    • Wrote JS function signatures and code.
    • Highlighted edge cases (no 1 present, fully continuous arrays, all negatives).
    • Explained why this approach meets O(n)/O(1) requirements.

3. JavaScript & React Concepts

  • Promises:

    • Explained promise states (pending/fulfilled/rejected), usage, chaining, and async/await.
  • Callbacks:

    • Discussed as arguments for async ops, in React (event handlers, child-to-parent comm), and array methods.
  • useEffect & useMemo:

    • Gave clear definitions, syntax, use cases, and sample code.
    • Explained when and why to use each for performance and side effects.

4. JS Fundamentals

  • call, apply, bind:

    • Compared usage, argument passing, and context binding.
  • Private Variables/Closures:

    • Demonstrated classic closure and ES6+ class fields.
  • IIFE:

    • Explained syntax, use cases for local scope/data privacy.
  • Hoisting:

    • Clarified what’s hoisted, difference between var/let/const, TDZ.
  • Synchronous vs. Asynchronous:

    • Explained default JS sync nature, async via event loop/callbacks/promises.

5. Closure Coding Challenge

  • Task: Implement a closure-based counter so each call returns the next increment.

  • Solution:

    • Wrote a factory function returning an inner function that remembers a private counter.

How I Approached the Round

  • Explained my thinking before coding, highlighted time/space tradeoffs.
  • Used CP-style variable names and code structure.
  • Gave edge cases, reasoning, and small dry runs for clarity.
  • Related answers back to real ServiceNow product scenarios (edge-case bugs, async APIs, UI interactions).

Overall Impression

  • Questions were practical, relevant, and tested core understanding.
  • Clear communication and explaining the "why" as well as the "how" was appreciated.
  • Prepping with LeetCode, React core, and real-world debugging scenarios helped a lot.

Interview Questions (11)

Q1
Next Greater Element to the Right
Data Structures & Algorithms

Given an array, print for each element its next greater element to the right (or -1 if none exists). Example: [11, 13, 21, 3][13, 21, -1, -1]

Q2
First Missing Positive Integer
Data Structures & Algorithms

Given an unsorted array, find the smallest missing positive integer starting from 1, in O(n) time and O(1) space. Example: [2, 3, -7, 6, 8, 1, -10, 15]4

Q3
JavaScript Promises
Other

Explain Promise states (pending/fulfilled/rejected), usage, chaining, and async/await.

Q4
JavaScript Callbacks
Other

Discuss callbacks as arguments for async ops, in React (event handlers, child-to-parent comm), and array methods.

Q5
React useEffect & useMemo
Other

Give clear definitions, syntax, use cases, and sample code for useEffect and useMemo. Explain when and why to use each for performance and side effects.

Q6
JavaScript `call`, `apply`, `bind`
Other

Compare usage, argument passing, and context binding for call, apply, and bind.

Q7
JavaScript Private Variables & Closures
Other

Demonstrate classic closure and ES6+ class fields for private variables.

Q8
JavaScript IIFE
Other

Explain IIFE syntax, use cases for local scope/data privacy.

Q9
JavaScript Hoisting
Other

Clarify what’s hoisted, difference between var/let/const, TDZ.

Q10
JavaScript Synchronous vs. Asynchronous
Other

Explain default JS sync nature, async via event loop/callbacks/promises.

Q11
Closure-based Counter
Data Structures & Algorithms

Implement a closure-based counter so each call returns the next increment. Task: Implement a closure-based counter so each call returns the next increment.

Preparation Tips

Prepping with LeetCode, React core, and real-world debugging scenarios helped a lot.

ServiceNow Interview Experience – Software Engineer (IC2) – May 2025
servicenow logo
Servicenow
Software Engineer (IC2)Hyderabad2.5 years
May 16, 20252 reads

Summary

I recently interviewed at ServiceNow for a Software Engineer (IC2) role, navigating multiple rounds covering DSA, HLD, and behavioral questions, and ultimately received an offer in May 2025.

Full Experience

Hi everyone, I recently interviewed at ServiceNow for the Software Engineer (IC2) role at their Hyderabad office. Here’s a quick breakdown of the process:

🔹 Round 1: DSA Jump Game II

Minimum Number of Swaps to Make the String Balanced

🔹 Round 2: DSA + HLD Remove K Digits

Merge Two Sorted Lists (without extra space)

One basic high-level design question. Good discussion overall.

🔹 Round 3: Hiring Manager Situation-based and behavioral questions

Discussion on past work

DSA variation of Majority Element (More then 3 distinct elements)

One HLD problem

🔸 Hiring Paused After this round, hiring was paused for the team I was interviewing with. HR contacted me after ~10 days and asked if I’d like to interview for a different team. I agreed.

🔹 Round 4: DSA + DB Design Modified Maximal Square (with coordinates)

One database design question

🔹 Round 5: DB Design + DSA Basic DB schema design

Valid Parentheses

✅ Final Outcome Got the offer in May 2025.

🙋‍♂️ About Me 2.5+ years experience

Tier-1 college

Product-based background

Compensation Detail Let me know if anyone has questions! Happy to help 😊

I don't know how to comment while staying anonymous.

  1. I had applied and forgotten about it, but after a few months, the HR reached out to me, I’d say it was pure luck.
  2. I don't know the exact team.

Interview Questions (7)

Q1
Jump Game II
Data Structures & Algorithms
Q2
Minimum Number of Swaps to Make the String Balanced
Data Structures & Algorithms
Q3
Remove K Digits
Data Structures & Algorithms
Q4
Merge Two Sorted Lists
Data Structures & Algorithms

Merge two sorted linked lists without using extra space.

Q5
Majority Element (More than 3 distinct elements)
Data Structures & Algorithms

A variation of the Majority Element problem where the requirement is to find elements appearing more than N/3 times, or generally, handle more than 3 distinct elements.

Q6
Maximal Square (with coordinates)
Data Structures & Algorithms

A modified version of the Maximal Square problem that involves handling coordinates.

Q7
Valid Parentheses
Data Structures & Algorithms
Servicenow - IC3 Interview Experience
servicenow logo
Servicenow
Senior Software Engineer (IC3) - Full stack EngineerHyderabad5.6 years
April 24, 20255 reads

Summary

I completed seven rounds of interviews for a Senior Software Engineer (IC3) - Full stack Engineer position at ServiceNow in Hyderabad, ultimately receiving an offer despite a challenging and lengthy process, which included multiple coding and system design rounds.

Full Experience

Company : Service Now Location : Hyderabad YOE : 5.6 years Position : Senior Software Engineer (IC3) - Full stack Engineer

Round 1 - Coding

Question 1 : Leetcode 11. Container With Most Water

Solved it using standard 2-pointer solution for this problem

Question 2 : ⁠⁠Given 2n numbers, check if we can divide them into n pairs with each pair containing same element : Eg. [3,2,3,2,2,2] - [3,3], [2,2],[2,2] - Return true

Used a set and looped through the array and inserted the element if it does not exist in set and removed the element from set if it exists already. Returned true if set is empty at the end.

Few questions on Javascript :

-> Output based questions around Promises, setTimeout, this keyword, || operations on different data types.

Answered all these questions correctly

Open ended design based question :

Design database schema and APIs for handling Credit and Debit transations in a bank

This section went well too as I incorporated all the follow up questions in my design

Round 2 - Coding

Question 1 :

Akash wants to distribute candies on his birthday. There are A people and he has two types of candies. B candies of the first type and C candies of the second type.

He wants to distribute candies in such a way that no person has candies of both types and each person has at least one candy.

Let X denotes the minimum candies among all people after distribution of candies.

Find the maximum X.

Eg. A=4 B=4 C=5

Output = 2

Solved it using binary search over range of possible valid answers. Interviewer was satisfied with the approach, sample test cases passed.

Question 2 :

Given an array A, find the nearest smaller element G[i] for every element A[i] in the array such that the element has an index smaller than i.

More formally, G[i] for an element A[i] = an element A[j] such that j is maximum possible AND j < i AND A[j] < A[i]

Elements for which no smaller element exist, consider the next smaller element as -1.

A = [1, 6, 5, 9, 10, 8, 11, 10] Output = -1 1 1 5 9 5 8 8

Proposed brute force initially and then improvised it using stack.

Round 3 - System Desgign (UI)

Design a configurable/Reusable table component - Discussion was more around what things I will be considering to make it as flexible as possible, how would the contract look like, handling complex cells in the table etc.

Overall went well, discussion felt healthy.

After these rounds, I was told that this position got cancellend and was told I was being mapped to a different position open with another team for which I have to give another round of system design and coding round since that team wanted it. Usually service now has 2 coding, 1 system design and 1 hiring manager rounds but had to given additional rounds due to this change

Round 4 - System Design

Build a messaging service - Design APIs, Database schema and Queries, basic code to process certain pieces of logic in these APIs etc

Overall went well, it felt like interviewer seemed satisifed at the end.

Round 5 - Coding

721. Account Merge

Solved it brute force using two hashmaps initially and then proposed and wrote pseudo code using dfs and interviewer looked okay at the end

Round 6 - Hiring Manager (US) General discussion about my experience, their team, and surprisingly a coding question :

227. Basic Calculator

Something similar to this but input won't have extra spaces. I did not have to solve it entirely, had to discuss the approach and it was a friendly discussion.

Round 7 - Hiring Manager (India)

General discussion about working culture, career, my past experience and projects.

Finally received the offer. Compensation details here - https://leetcode.com/discuss/post/6660684/servicenow-senior-software-engineer-ic3-22guq/

It was little exhausting as I had to give same rounds multiple times. I felt I was lowballed in the offered compensation especially after clearing so many rounds and servicenow compensation standards.

But having an offer after months of search finally feels like a relief.

Interview Questions (10)

Q1
Container With Most Water
Data Structures & AlgorithmsMedium

Given n non-negative integers a1, a2, ..., an, where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i are (i, ai) and (i, 0). Find two lines, which, together with the x-axis, forms a container, such that the container contains the most water.

Q2
Check if Numbers Can Be Divided into N Pairs of Same Elements
Data Structures & Algorithms

Given 2n numbers, check if we can divide them into n pairs with each pair containing the same element. Example: [3,2,3,2,2,2] -> [3,3], [2,2],[2,2] -> Return true

Q3
Javascript Output Questions
Other

Output based questions around Promises, setTimeout, this keyword, and || operations on different data types.

Q4
Design Database Schema and APIs for Credit/Debit Transactions
System Design

Design database schema and APIs for handling Credit and Debit transactions in a bank.

Q5
Maximize Minimum Candies per Person (Two Types)
Data Structures & Algorithms

Akash wants to distribute candies on his birthday. There are A people and he has two types of candies. B candies of the first type and C candies of the second type. He wants to distribute candies in such a way that no person has candies of both types and each person has at least one candy. Let X denotes the minimum candies among all people after distribution of candies. Find the maximum X. Eg. A=4 B=4 C=5 Output = 2

Q6
Nearest Smaller Element to the Left
Data Structures & AlgorithmsMedium

Given an array A, find the nearest smaller element G[i] for every element A[i] in the array such that the element has an index smaller than i. More formally, G[i] for an element A[i] = an element A[j] such that j is maximum possible AND j < i AND A[j] < A[i] Elements for which no smaller element exist, consider the next smaller element as -1. A = [1, 6, 5, 9, 10, 8, 11, 10] Output = -1 1 1 5 9 5 8 8

Q7
Design Configurable/Reusable Table Component (UI System Design)
System Design

Design a configurable/reusable table component. The discussion focused on considerations for flexibility, the component's contract (API), and handling complex cells within the table.

Q8
Design a Messaging Service
System DesignHard

Design a messaging service, including its APIs, database schema and queries, and basic code to process certain pieces of logic in these APIs.

Q9
Account Merge
Data Structures & AlgorithmsMedium

Given a list of accounts where each account consists of a name and a list of emails, merge these accounts. Two accounts belong to the same person if they have some email in common. Note that emails are case-insensitive. After merging, each account should consist of the name and a list of sorted unique emails. The accounts should be sorted by name and then by the first email in each account.

Q10
Basic Calculator II (similar, no extra spaces)
Data Structures & AlgorithmsMedium

Implement a basic calculator to evaluate a simple expression string. The expression string contains only non-negative integers, +, -, *, / operators and empty spaces. The integer division should truncate toward zero. The input expression does not contain extra spaces, similar to LeetCode problem 227.

Servicenow IC2 No response after last round
servicenow logo
Servicenow
SDE I1.67 years
April 19, 20254 reads

Summary

I recently appeared for a ServiceNow IC2 interview, detailing three rounds including DSA, system design, and behavioral questions, but I have not yet received a response after the final round.

Full Experience

Hi everyone,

I recently appeared for a ServiceNow interview.

First Round: DSA + My Previous Work

Bracket Swapping (standard question)

Math + Binary Search question (easy-medium level, I can't recall the exact problem)
I solved both optimally.

Second Round: DSA + My Previous Work

Rotten Oranges (solved completely)

Find the number of rooms required to conduct all meetings
(I explained it using the line sweep algorithm, but the interviewer asked me not to use that approach. I have come up with new approach but couldn’t code it in within the given time)
The interviewer seemed satisfied with my approach, and I got a call for the Hiring Manager round the same day.

Third Round: HM Round

Basic questions on Java, Docker, Kubernetes, Java vs Golang, Rest vs Grpc

A puzzle

Discussion about my previous work, current salary, and expected salary
(I primarily work as a backend developer (SpringBoot, Golang) and have a basic understanding of Docker and Kubernetes. I answered all questions correctly, except for one Docker-related question, which I couldn't answer properly.)

It's been 5 days since the last round, and I haven’t heard back from them.
Has anyone faced a similar situation or can share any insights?

Update: HR called me asked me to share documents (3months payslip, pan, passport,...) and expected salary, I have shared all the details but no response from there side even after 4 days, not lifting the calls currently :(

About Me:

Expereience: 1 year 8 months
College: Tier-1
Current Company: Startup - One of India's Biggest :)

Interview Questions (2)

Q1
Rotten Oranges
Data Structures & Algorithms

Given a grid of oranges, where 0 is an empty cell, 1 is a fresh orange, and 2 is a rotten orange. Every minute, any fresh orange that is 4-directionally adjacent to a rotten orange becomes rotten. Determine the minimum number of minutes that must elapse until no fresh oranges remain. If this is impossible, return -1.

Q2
Meeting Rooms II
Data Structures & Algorithms

Given an array of meeting time intervals intervals where intervals[i] = [starti, endi], return the minimum number of conference rooms required.

ServiceNow SSE
servicenow logo
Servicenow
Senior Software Engineer
April 16, 20255 reads

Summary

I interviewed for a Senior Software Engineer (SSE) position at ServiceNow, which included an HR screening and a Problem Solving/DSA round. I successfully solved the DSA problems within 30 minutes and discussed work culture, but I was ultimately rejected.

Full Experience

1.HR Screening

2.PS/DSA
    1.Longest subarray of zero Sum
    follow up : Print subarray
    2. Zig zag traversal of Binary Tree

Solved with in 30 mins and discussed work culture in servicenow

Final Verdict: Rejected

Interview Questions (3)

Q1
Longest Subarray with Zero Sum
Data Structures & AlgorithmsMedium

Find the longest contiguous subarray whose elements sum up to zero.

Q2
Print Longest Subarray with Zero Sum
Data Structures & AlgorithmsMedium

After finding the longest contiguous subarray whose elements sum up to zero, print the actual subarray. This was a follow-up to the previous problem.

Q3
Binary Tree Zigzag Level Order Traversal
Data Structures & AlgorithmsMedium

Given the root of a binary tree, return the zigzag level order traversal of its nodes' values. (i.e., from left to right, then right to left for the next level and alternate between).

ServiceNow Interview Experience - Senior Software Engineer
servicenow logo
Servicenow
Senior Software Engineer4.5 years
April 8, 20255 reads

Summary

I applied to ServiceNow via referral for a Senior Software Engineer role. I underwent a 60-minute round covering project discussion, design patterns, multithreading scenarios, and two DSA questions: Longest Palindromic Substring and Course Schedule. I was rejected after failing to fully solve Course Schedule.

Full Experience

Applied to ServiceNow via Referral, got a call as I was an immediate joiner. Total experience - 4.5 years

Round 1 - 60 mins

  • Initial 20 mins -
    • Discussion and cross questions on my current project.
    • Questions about Design patterns - specially Singleton Design Pattern, how can we break Singleton pattern, how to make it thread safe, what are reflection APIs
    • Few Scenario based questions on Multithreading.
  • Next 40 Mins -
    • 2 DSA Questions - Longest Palindromic Substring, Course Schedule
    • Expectation was to have complete working code.

Rejected in round 1 as I could solve first question full but 2nd question partially(few TCs were failing).

Interview Questions (3)

Q1
Singleton Design Pattern and its Vulnerabilities
Other

Discussion on Design patterns, specifically the Singleton Design Pattern: how can we break it, how to make it thread safe, and questions about reflection APIs in this context.

Q2
Longest Palindromic Substring
Data Structures & Algorithms

A Data Structures & Algorithms question requiring the implementation of the Longest Palindromic Substring problem. Expectation was to have complete working code.

Q3
Course Schedule
Data Structures & Algorithms

A Data Structures & Algorithms question requiring the implementation of the Course Schedule problem. Expectation was to have complete working code.

SSE @ ServiceNow
servicenow logo
Servicenow
Senior Software Engineer
April 3, 20253 reads

Summary

I interviewed for a Senior Software Engineer position at ServiceNow, completing two rounds that included coding, system design, and project discussions. I was ultimately rejected.

Full Experience

Round 1

  1. Coding: Search for a value on a row and column sorted 2d matrix.
  2. Short discussion on a past project.
  3. Discussed approach for the below:
    // Given a log file, each log consists time stamp, user name, message. Output top N users in descending order of total no of words used.
    // Ip: 10.10 John ABC def
    // 10.11 Marie ABC
    // 10.20 Marie Q W E
    // 10.23 John ABC def
    // N = 1
    // M
    

    // Op: [(John, 4)]

    // Also parse log function is given which takes input as log file path, and then returns List of users and their word counts // [(John, 2), (Marie, 1), (John, 2)]

Round 2

  1. Coding:

    Variation of https://leetcode.com/problems/longest-consecutive-sequence, but for prime numbers. Still expected O(n) 🙂
    Length of Longest Consecutive prime Subsequence in unsorted array
    eg: arr[] = {36, 41, 19, 56, 35, 44, 13, 33, 17, 29, 34, 11, 92, 43, 23, 32, 42}
    11, 13, 17, 19, 23, 29 -> 6
    N <= 10^7
    0 <= arr[i] <= 10^7

    • Unique numbers
    • unsorted
    Sieve not allowed due to the space it takes. Expected complexity of the driver algorithm - O(n). I don't really think a solutions exists.

    After some time, he mentioned we can assume we have a method that returns the next prime number for a given prime number in a very efficient way.
  2. Last few mins discussion on LLD of BookMyShow for movies in India.

Verdict

Rejected

Interview Questions (4)

Q1
Search in Row-Column Sorted 2D Matrix
Data Structures & Algorithms

Search for a value on a row and column sorted 2d matrix.

Q2
Top N Users by Word Count in Log File
Data Structures & Algorithms

Given a log file, each log consists time stamp, user name, message. Output top N users in descending order of total no of words used. Ip: 10.10 John ABC def 10.11 Marie ABC 10.20 Marie Q W E 10.23 John ABC def N = 1

Op: [(John, 4)]

Also parse log function is given which takes input as log file path, and then returns List of users and their word counts [(John, 2), (Marie, 1), (John, 2)]

Q3
Longest Consecutive Prime Subsequence
Data Structures & Algorithms

Variation of https://leetcode.com/problems/longest-consecutive-sequence, but for prime numbers. Still expected O(n) 🙂

Length of Longest Consecutive prime Subsequence in unsorted array eg: arr[] = {36, 41, 19, 56, 35, 44, 13, 33, 17, 29, 34, 11, 92, 43, 23, 32, 42} 11, 13, 17, 19, 23, 29 -> 6 N <= 10^7 0 <= arr[i] <= 10^7

  • Unique numbers
  • unsorted

Sieve not allowed due to the space it takes. Expected complexity of the driver algorithm - O(n). I don't really think a solutions exists.

After some time, he mentioned we can assume we have a method that returns the next prime number for a given prime number in a very efficient way.

Q4
Low-Level Design of BookMyShow
System Design

Low-level design discussion for BookMyShow for movies in India.

ServiceNow SSE (IC3) interview experience
servicenow logo
Servicenow
SSE (IC3)Bangalore5.1 years
April 2, 20254 reads

Summary

I interviewed for a Software Staff Engineer (IC3) position at ServiceNow in Bangalore, which involved multiple rounds covering DSA, system design, and behavioral questions. Despite some areas where my knowledge was rated as average, I received positive feedback from the hiring manager round and am awaiting a potential offer.

Full Experience

Hi all,

My exp: 5.10 (Java) Current Location: Bangalore

Round 1 & Round 2: Easy to medium level DSA questions (dont remember but pretty solvable) Feedback: Positive (no negative details)

Round 3: Interviewer grilled me on technical topics.

  1. He started with Databases - I aforementioned I barely worked at Database level, written basic queries to fetch data - he skipped the topic completely (feedback was candidate lacked DB knowledge)
  2. Then he asked question like producer and consumer where producer produces events (timestamp, userid, msg) in unordered way. Consumer consumes them and once the batch reaches 100size sorts and prints. I gave him working solution (feedback was solution was incomplete but acceptable)
  3. When a user hits 100 requests at a time what happens on the server, how they are processed in your springboot application? (please share your answers)
  4. How do you limit amount of data size in request? I said I use page no and size in the request. He asked me to show it and I have shown.
  5. What measures will you take for the scenarios when the service you call not responds for some reason like timeout? I said Circuit breaker pattern
  6. Grilled me about Circuit breaker - How it helps? You can use error response 500 to understand that service failed but why do you need circuit breaker etc. I have answered the advantages (please share your answers too)
  7. Where you deployed your services? I used different platforms - OCP, Cloud like AWS etc

Overall feedback - just average (Candidate has good problem solving skills. Technology is poor - answered all but barely scratched the surface etc.)

My experience is that the cross questions were unclear. He asked on a very high level which are very difficult for me to interpret what was he expecting as an answer.

Have HM round scheduled tomorrow. Any suggestions on how to do in that round are welcome. My recruiter mentioned if HM goes well, most likely will get offer.

I will keep you posted

Update: Round 4: HM Round He politely spoke throughout the interview. Started off with a coding problem - min swaps to balance parenthesis. I did not solve the problem before but know using stack to check balanced/unbalanced parenthesis. I maintained a count of unbalanced ones but it did not give min swaps. Then I digged with other examples and found the logic. Interviewer also had participated in solving the problem. Finally got the solution. Other topics:- Microservices and REST API - what are they and differences? Authentication Statelessness Talk about previous project with Microservices

Feed back: Positive (not received detailed feedback yet)

Edit: Forgot to mention that there was another HM round after Round 1 & 2. Interviewer asked some managerial questions like how do you know and why do you want to join etc. Then a palindromic substring question and newsfeed systemdesign. I was not able to solve coding question completely. We discussed the design on high level where she asked a few questions and I clarified. But the feedback was design not good, can consider for IC2.

Details of Compensation: here

Interview Questions (13)

Q1
Producer-Consumer with Batch Sorting
Data Structures & Algorithms

Implement a producer-consumer system where the producer generates events (timestamp, user ID, message) in an unordered fashion. The consumer should consume these events, and once a batch of 100 events is accumulated, it should sort and print them.

Q2
Handling High Concurrent Requests in Spring Boot
System Design

Explain what happens on the server when a user sends 100 requests concurrently, and how these requests are processed within a Spring Boot application.

Q3
Limiting Request Data Size
System Design

How do you limit the amount of data size in a request? I demonstrated using page number and size parameters in the request.

Q4
Handling Service Timeouts with Circuit Breaker
System Design

What measures would you take for scenarios where a called service does not respond due to reasons like a timeout?

Q5
Deep Dive into Circuit Breaker Pattern
System Design

Explain how the Circuit Breaker pattern helps. Why is it needed when an HTTP 500 error response can indicate a service failure? Discuss its advantages.

Q6
Service Deployment Platforms
System Design

Discuss the platforms where you have deployed your services.

Q7
Minimum Swaps to Balance Parentheses
Data Structures & Algorithms

Given a string of parentheses, find the minimum number of swaps required to balance it. I initially tried using a count of unbalanced parentheses, but eventually found the correct logic with the interviewer's help.

Q8
Microservices vs. REST API
System Design

Explain what Microservices and REST APIs are, and discuss their differences.

Q9
Authentication Concepts
System Design

Discuss concepts related to Authentication.

Q10
Statelessness in System Design
System Design

Discuss the concept of statelessness in system design.

Q11
Discussion on Microservices Project Experience
Behavioral

Discuss my previous project experience involving Microservices.

Q12
Motivation for Joining ServiceNow
Behavioral

Answer managerial questions such as how I know about ServiceNow and why I want to join.

Q13
Design a Newsfeed System
System Design

Design a newsfeed system. We discussed the design on a high level.

ServiceNow | IC2 | Hydrebad | Jan 2025
servicenow logo
Servicenow
SDE IHyderabad3 yearsOffer
February 18, 202541 reads

Summary

I recently had an interview at ServiceNow for an IC2 role in Hyderabad after receiving a referral. The process involved three rounds focusing on Data Structures & Algorithms, High-Level Design, and a Hiring Manager discussion, ultimately resulting in an offer.

Full Experience

Round 1: Focus on DSA

The first round concentrated on Data Structures and Algorithms.

  • I was asked to find the Next Greater Element (NGE) for every element in a given array.
  • There was another medium-level problem that involved typical DSA concepts, but I don't recall the exact question.
  • A problem was presented involving trains at a railway station with varying arrival times, some cancelled or delayed. The interviewer asked which data structure would be most suitable for solving this and why.
  • Finally, I was asked for my approach to solving the Coin Change problem.

Round 2: DSA + HLD

The second round combined DSA with High-Level Design.

  • One question involved reconstructing a normal Binary Search Tree (BST) given its postorder traversal.
  • I was also given a High-Level Design problem related to Swiggy, where they wanted to assess my understanding of HLD and its practical application.

Round 3: Hiring Manager

The final round was with the Hiring Manager.

  • I was asked to design a database for a hotel booking system, specifically mentioning OYO DB Design.
  • Additionally, I had to provide an efficient approach to solve the classic Stock Buy and Sell Problem.

I am pleased to share that I was selected for the role.

Interview Questions (7)

Q1
Next Greater Element
Data Structures & AlgorithmsMedium

Given an array, find the Next Greater Element (NGE) for every element in it. The Next Greater Element for an element x is the first greater element on the right side of x in the array. If no such element exists, consider it -1.

Q2
Train Scheduling Data Structure
Data Structures & Algorithms

I encountered a problem involving trains at a railway station with varying arrival times, some cancelled or delayed. I was asked to identify the most suitable data structure for solving this problem and provide justification.

Q3
Coin Change Problem
Data Structures & AlgorithmsMedium

I was asked to describe the approach to solving the classic Coin Change problem, which involves finding the minimum number of coins needed to make a certain amount, given a set of coin denominations.

Q4
Convert Postorder Traversal to BST
Data Structures & AlgorithmsMedium

Given a postorder traversal sequence of a Binary Search Tree (BST), reconstruct the original BST from it.

Q5
Swiggy HLD Problem
System Design

I was presented with a High-Level Design (HLD) problem related to Swiggy, designed to test my understanding of HLD principles and their application in a practical scenario.

Q6
OYO Database Design
System Design

I was tasked with designing a database for a hotel booking system, similar to OYO.

Q7
Stock Buy and Sell Problem
Data Structures & AlgorithmsEasy

I was asked to provide an efficient approach to solve the classic Stock Buy and Sell problem, where the goal is to maximize profit by buying and selling stocks over a period.

ServiceNow ASE Role Interview Experience
servicenow logo
Servicenow
Associate Software EngineerOngoing
November 16, 202458 reads

Summary

I experienced a four-round interview process for the Associate Software Engineer role at ServiceNow. The process included an online test with DSA and SQL, two technical rounds focusing on DSA, OOPS, and puzzles, and a final technical-managerial discussion.

Full Experience

My interview journey at ServiceNow for the Associate Software Engineer role comprised four distinct rounds: an Online Test, two Technical Rounds, and a final Technical + Manager Round.

Round 1: Online Test on HackerRank (2 DSA + 1 SQL)

This round was conducted on HackerRank with a time limit of 105 minutes. It included two Data Structures & Algorithms (DSA) questions and one SQL question. I was informed that those who solved all three questions received interview invitations.

Round 2: Technical Interview 1

This round was exclusively focused on DSA and a discussion of my resume. For the first 15 minutes, we discussed projects mentioned on my resume. The interviewer asked basic questions about problem statements, definitions of libraries and tech stacks used, and real-life applications of my projects. The DSA question asked was LeetCode 572. Subtree of Another Tree, where I was expected to present different approaches along with their time and space complexities, from brute force to optimal solutions.

Round 3: Technical Interview 2

This round primarily focused on easy Data Structures and Algorithms (DSA), Object-Oriented Programming (OOPs) concepts, and Puzzles. I faced multiple DSA questions and then some OOPs theory. Towards the end, the interviewer presented two puzzles; I managed to solve one, but the other posed a greater challenge.

Round 4: Technical + Managerial Interview

This final round combined a brief description of my projects and past experiences with a managerial evaluation. In the technical discussion, I was asked the reasons behind choosing each project and selecting specific libraries and frameworks. For the managerial discussion, questions revolved around how I take inputs from managers, where I envision myself in the next 5 years, and my interests in tech and hobbies.

Interview Questions (8)

Q1
Maximum Sum of Mountain Elements of Size 3
Data Structures & AlgorithmsEasy

Given an array of integers in any order, return the maximum of a+b+c where a, b, c are subsequences in the array, and a < b > c.

Q2
Number of Arrays with Specific Cost
Data Structures & AlgorithmsMedium

Given an array of integers, its totalCost is calculated as follows, where n = the number of elements in the array and the array itself is named element.

currentMaximumElement = element[0]
totalCost = 0
for ( i = 1; i < n; i += 1){
if (element[i]>currentMaximumElement){
currentMaximumElement=element[i]
totalCost+=1
}
}
Given three values, n, m, and totalCost, find the number of distinct arrays that meet the following criteria:
Each array consists of n integers.
1 <= value at index i in each array <= m, where 0 <= i < n.
The cost to find the maximum element of each array is equal to totalCost.

Two arrays are said to be distinct if there exists at least one index i (where 0 <= i < n) such that the elements at index i are not equal.
For example, given values n=4, m=4, and totalCost=2. With totalCost=2 increases in maximum value from the initial value at element 0 and n=4 elements, each element is between 1 and m=4 inclusive. There are 30 such arrays:
[1,1,2,3], [1,2,1,3], [1,2,3,1],[1,2,2,3], [1,2,3,2],[1,2,3,3],[1,1,2,4], [1,2,1,4], [1,2,4,1],[1,2,2,4], [1,2,4,2],[1,2,4,4],[1,1,3,4], [1,3,1,4], [1,3,4,1],[1,3,3,4], [1,3,4,3],[1,3,4,4],[2,2,3,4], [2,3,4], [2,3,4,2],[2,3,3,4], [2,3,4,3],[2,3,4,4],[2,1,2,3], [2,1,2,4], [2,1,3,4],[2,3,1,4],[2,3,2,4], [2,3,4,1]

Complete the Function
	vector arraysCount(vector n,vector m, vector totalCost){

}</code></pre>Function Description:<br>The function must return an array of integers where each answer[i] equals the number of arrays that meet the criteria for the query, modulo 10^9 +7.<br>Sample Input/Output:<br>The arrays are n=[2, 3, 4], m= [3, 3, 3], and totalCost=[1, 2, 2]. Let the return array be answers, then:<br>answers[0] describes the value arraysCount(n[0] =2, m[0]=3, totalCost[0] = 1) i.e., the total number distinct of arrays such that<br>Each array consists of 2 elements<br>1 <= value at each index i in each array <= 3, where 0 <= i < 2<br>The cost of finding the maximum element of each array = 1<br>The following three arrays meet the criteria:<br>[1,2]<br>[1,3]<br>[2,3]<br>Answer for this query is 3.<br>Similarly the answers array has to be [3,1,6].<br>Constraints:<br>1 < q <= 50<br>1 <= n[i] <= 50, where 0 <= i < q<br>1 <= m[i] <= 100, where 0 <= i < q<br>0 <= totalCost[i] < n[i]. Where 0 <= i < q
Q3
Vaccination Dose Timing Percentage
Other

A vaccine is administered in two doses. It is best if the doses are given between 48 and 72 days apart inclusive. Write a SQL query to return the percentage of beneficiaries who received both doses within the recommended time period, rounded to the nearest integer. Table doses: Dose_id, Beneficiary_id, dose_type, vaccination_date.

Q4
Subtree of Another Tree
Data Structures & Algorithms

LeetCode 572. Subtree of Another Tree. I was asked to discuss different approaches along with their time and space complexities, from brute force to optimal solutions.

Q5
Print Matrix in Spiral Order
Data Structures & Algorithms

Print the elements of a given matrix in spiral order.

Q6
3Sum
Data Structures & Algorithms

The problem was to find all unique triplets in an array which sum to zero (e.g., LeetCode 15. 3Sum). I was asked to provide the optimal approach.

Q7
Characteristics of OOPS
Other

I was asked to discuss the fundamental characteristics of Object-Oriented Programming (OOPs).

Q8
Abstract Class vs. Interface
Other

I had to explain the key differences between an Abstract class and an Interface in OOPs.

ServiceNow | SSE | Hyderabad | May 2024
servicenow logo
Servicenow
Senior Software EngineerHyderabadRejected
June 13, 202451 reads

Summary

I interviewed for a Senior Software Engineer position at ServiceNow, successfully clearing four rounds of interviews. Despite receiving positive feedback throughout the process, I was ultimately rejected with a generic email.

Full Experience

My journey began with an introductory call from a recruiter who discussed my background, previous experience, the role's details, and compensation expectations. After confirming alignment, they informed me that another HR representative would assist with scheduling.

Approximately 10 days later, my first technical round was scheduled:

Problem Solving Round

This round focused heavily on problem-solving skills and the rationale behind choosing specific algorithms. The interviewer was less interested in perfectly working code and more in my thought process and a draft solution. I was presented with two coding challenges and one behavioral question:

Miscellaneous Round with Staff Engineer

Immediately after clearing the first round, HR contacted me to schedule the next round, which happened two days later. This round with a Staff Engineer touched upon a wide range of topics, with the interviewer emphasizing that he was evaluating my problem-solving approach rather than just the final solution. We discussed a coding problem, its extensions, and several system design and conceptual questions:

Miscellaneous Round with EM

After a week, HR informed me I had cleared the Staff Engineer round and scheduled the next round for the very next day. This round was with an Engineering Manager (not the hiring manager) and focused on my previous work experience, a deep dive into one of my past projects, and some Object-Oriented Programming (OOPs) concepts.

Techno-Behavioral Round with HM

Two days later, HR called again to confirm I had cleared all three technical rounds, and the final round with the Hiring Manager was scheduled for the following day. This round involved extensive discussions about my previous work, expectations from the company and the role, and ensuring mutual alignment. I was also asked a system design question:

All my rounds proceeded well, and I consistently received positive feedback. However, despite this, I eventually received a generic rejection email, which felt similar to a rejection during the resume screening phase. I've observed this pattern with other candidates too, which I believe is an inefficient use of time and resources for both candidates and the company, potentially impacting the company's reputation.

Interview Questions (11)

Q1
Next Greater Element II
Data Structures & AlgorithmsMedium

Given a circular integer array nums, return the next greater number for every element in nums. The next greater number of a number x is the first greater number to its traversing clockwise next in the array. If no next greater number exists, output -1 for this number.

Q2
Evaluate Balanced Parentheses String
Data Structures & AlgorithmsMedium

Given a string s consisting of only open and closed parentheses '(', ')', evaluate its score based on the following rules:

  • () has a score of 1.
  • AB has a score of A + B, where A and B are balanced parentheses strings.
  • (A) has a score of 2 * A, where A is a balanced parentheses string.

Q3
Anti-Engineering Experience
Behavioral

Describe a time when you engaged in 'anti-engineering' practices and explain your rationale for doing so.

Q4
Find Unique Element in Sorted Duplicated Array
Data Structures & AlgorithmsMedium

Given an array where all elements appear twice and are placed next to each other, except for one single element which is not repeated. Find that unique element. Example: [1,1,2,2,4,4,5,6,6] output 5.

Q5
Define Fault Tolerance
System Design

What is fault tolerance?

Q6
Define Transactions
System Design

What is a transaction?

Q7
Transactions in Distributed Systems
System Design

Explain transactions in a distributed system context.

Q8
Inter-service Communication (Payment & Order)
System DesignHard

Describe how a payment service and an order service can communicate and update their respective values during the process of an order creation.

Q9
Low-Level Design: Cab Booking System (Pricing)
System DesignHard

Perform a Low-Level Design (LLD) for a Cab Booking system, specifically focusing on implementing the pricing mechanism with simple assumptions.

Q10
REST API Best Practices
System Design

What are the best practices for creating a new REST API?

Q11
Data Model: Aarogya Setu App
System DesignMedium

Design a data model for the Aarogya Setu application.

Service Now - SSE
servicenow logo
Servicenow
SDE IIRejected
June 4, 202439 reads

Summary

I interviewed for a Software Staff Engineer (SSE) role at ServiceNow and unfortunately faced rejection after the second round. The interview process focused heavily on Data Structures and Algorithms, covering both well-known problems and a custom array partitioning challenge.

Full Experience

I recently interviewed for the SSE position at ServiceNow, which consisted of two rounds, primarily focusing on Data Structures and Algorithms.

Round 1: This round involved solving two DSA questions. I was asked to implement solutions for Spiral Matrix and Number of Islands. I successfully solved both problems and was advanced to the next round.

Round 2: In this round, I was presented with a custom array partitioning problem. Despite my efforts, I was not able to clear this round and received a rejection. A key takeaway from my experience is that they place a significant emphasis on the correctness and output of solutions in each round.

Interview Questions (3)

Q1
Spiral Matrix
Data Structures & AlgorithmsMedium

Given an m x n matrix, return all elements of the matrix in spiral order. For example, given [[1,2,3],[4,5,6],[7,8,9]], the output should be [1,2,3,6,9,8,7,4,5].

Q2
Number of Islands
Data Structures & AlgorithmsMedium

Given an m x n 2D binary grid which represents a map of '1's (land) and '0's (water), return the number of islands. An island is surrounded by water and is formed by connecting adjacent lands horizontally or vertically. You may assume all four edges of the grid are all surrounded by water.

Q3
Partition Array into Three Equal Sum Subarrays (Excluding Partition Elements)
Data Structures & Algorithms

You are given an array of integers. You need to partition the array into three subarrays such that the sum of each subarray is equal. An important constraint is that the elements at the partition points should not be considered part of any subarray.

Example: If the input array is [1,2,1,2,1,2,1] and you partition at indices 1, 3, and 5, you would get three subarrays whose sums are 1 each ([1], [1], [1]). In such a case, you should return true. Otherwise, return false.

ServiceNow | IC3 | Offer
servicenow logo
Servicenow
SDE IIOffer
March 21, 202479 reads

Summary

I successfully interviewed for an IC3 position at servicenow, which involved three comprehensive rounds covering data structures and algorithms, Java, SQL, system design, and problem-solving, ultimately leading to an offer.

Full Experience

I applied for a position at ServiceNow through LinkedIn and was contacted by a recruiter after about three weeks. The interview process was structured incrementally, meaning I had to clear each round to progress to the next. I faced a total of three interview rounds.

Round 1 (DSA & Technical)
My first round focused on DSA and core technical concepts. The interviewer asked one DSA question, a Java-related question, and a simple SQL query. I was asked to swap numbers in a linked list, save employee data into a data structure ordered by salary using a comparator, and write a SQL query to sum salaries grouped by department and ordered descending. We also discussed my projects and Java concepts like exception handling. All questions in this round felt relatively easy.

Round 2 (DSA & Problem Solving)
The second round was more about problem-solving. I received another DSA question and a non-coding puzzle. The DSA task was to find the largest possible number by rearranging integers in a given array, which I found to be an easy-medium difficulty. The puzzle involved three mislabeled boxes (apples, oranges, both) and determining the minimum picks to correctly label them; the interviewer was particularly interested in my approach and logic.

Round 3 (DSA & LLD & Managerial)
The final third round combined DSA, Low-Level Design (LLD), and managerial aspects. It began with an LLD question similar to designing an MRU cache, where we delved into data structure choices, reasons, and complexity analysis. Following that, a DSA question involved finding an element with a minimum number of steps in an array where adjacent elements had a difference of 1. I managed to solve the DSA problem, but I felt the interviewer wasn't entirely satisfied with my LLD answer. Despite my reservations about the LLD, I was fortunate to receive an offer.

Interview Questions (7)

Q1
Swap Numbers in Linked List
Data Structures & AlgorithmsEasy

The interviewer asked to swap numbers (data) of nodes in a Linked List.

Q2
Store Employee Data by Salary
Data Structures & Algorithms

I was asked to save employee data into a data structure such that employees are ordered by their salary.

Q3
SQL: Sum Salaries by Department
Other

Write a SQL query to sum the salaries of employees, grouped by department, and order the results by salary in descending order.

Q4
Largest Number from Array Rearrangement
Data Structures & AlgorithmsMedium

Given an array of non-negative integers, arrange them such that they form the largest number.

Q5
Three Boxes Puzzle
Other

You have three boxes. One contains only apples, one contains only oranges, and one contains both apples and oranges. All three boxes are mislabeled. You can pick one box at a time and check its contents. What is the minimum number of picks required to correctly label all boxes, and why?

Q6
Low-Level Design: MRU Cache
System Design

I was asked a Low-Level Design question similar to an MRU (Most Recently Used) cache. The discussion involved choosing appropriate data structures, explaining design choices, and analyzing time and space complexities.

Q7
Find Element with Minimum Steps in Array
Data Structures & Algorithms

Given an array of integers in which elements have a difference of 1 with their adjacent elements. Within this, find an element with the minimum number of steps (implying a specific search strategy for an optimal value).

Sum of Elements using Indices | Service Now | SSE | Feb 2024 | DSA | Reject
servicenow logo
Servicenow
SDE IIRejected
March 7, 202439 reads

Summary

I interviewed for a Software Staff Engineer position at ServiceNow in February 2024. The interview focused on Data Structures & Algorithms, specifically a problem involving calculating the sum of elements within a given range, and I was unfortunately rejected.

Full Experience

I recently had an interview for the SSE role at ServiceNow in February 2024. The session primarily revolved around Data Structures & Algorithms, where I was presented with a specific coding challenge. Despite my efforts, the outcome was a rejection.

Interview Questions (1)

Q1
Range Sum Query
Data Structures & AlgorithmsMedium

Given an array of n integers and q queries. Each query is defined by a start index s and an end index e. For each query, I needed to return the sum of elements of the indices from s to e (inclusive).

Example:
a=[1,2,3,6,3,2];
q = 3
Queries:
s,e-> [2,3]
s,e-> [0,4]
s,e-> [1,2]

Expected Output Sums:
sum=[9,12,5]

Interview | Software Quality Engineer | IC2 | ServiceNow
servicenow logo
Servicenow
software quality engineerOngoing
March 7, 202431 reads

Summary

I recently interviewed for the Software Quality Engineer (IC2) position at ServiceNow, progressing through multiple technical rounds and a hiring manager conversation. I successfully cleared all rounds and am currently awaiting an official offer.

Full Experience

Phase 1: Initial Phone Screening from HR

I started my interview process with an HR phone screen. During this call, we engaged in a comprehensive discussion about my current role and responsibilities, which successfully set the stage for the subsequent technical rounds.

Technical Phone Interview (Round 1)

This round was a technical deep dive, guided by a veteran senior quality engineer who maintained a calm demeanor throughout. We covered a wide array of topics to assess my technical acumen and problem-solving abilities:

  1. I provided detailed insights into my daily activities, emphasizing my key responsibilities and achievements in my current role.
  2. We discussed the role of Maven in managing project dependencies, and I highlighted its primary benefit in simplifying the build process.
  3. I clearly distinguished between method overloading and overriding, demonstrating a solid understanding of object-oriented programming (OOP) principles.
  4. I gave a detailed explanation of the structure of the test automation suite I had implemented, showcasing its organization and efficiency.
  5. I justified the use of POM.xml over alternative methods, highlighting its advantages in managing project dependencies.
  6. I successfully tackled the LeetCode medium-level problem 'Three Sum,' demonstrating my problem-solving skills.
  7. I enumerated the significance and use cases of various TestNG annotation methods, such as `@AfterSuite`, `@BeforeSuite`, and `@AfterClass`.
  8. I articulated the importance of assertions in testing and how they ensure the expected behavior of the code.
  9. I described the Jenkins setup I had implemented and discussed possible improvements and additional functionalities for continuous integration.
  10. I explained the implementation of parallel test case execution, demonstrating approaches to achieve scalability and efficiency in testing.
  11. I shared strategies I've used to address challenges in finding XPath for certain test cases, displaying my problem-solving skills in web automation.
  12. I clarified the nature of the automation suite I developed, categorizing it as BDD (Behavior-Driven Development), KDD (Keyword-Driven Development), and DOM-based.

Following this comprehensive round, I was pleased to receive an invitation for Round 2, which made me believe the interview went well!

Round 2 Interview

This round provided a further comprehensive understanding of various programming concepts and practical application scenarios, significantly enhancing my problem-solving skills and programming proficiency.

  1. I was asked to differentiate between overloading and overriding, and I provided an example related to automation, explaining how method overloading could involve having multiple methods with the same name but accepting different types of locator strategies.
  2. I debugged several provided Java code snippets, determining their output and explaining the behavior in scenarios involving `System.exit(0)` in a `try-finally` block, method overriding with exceptions in a class hierarchy, and the misuse of a `break` statement within a `try-finally` block.
  3. I explained how error codes are typically utilized in APIs when a resource is not present, citing common examples such as 404 for 'Not Found' and 400 for 'Bad Request'.
  4. I listed common HTML tags automated in web automation, such as `<input>`, `<button>`, and `<select>`, and briefly explained how they are automated using tools like Selenium WebDriver. I also detailed how iframes are handled in web automation by switching to the frame using Selenium's `switchTo().frame()` method before interacting with elements inside and then switching back to the default content.
  5. I was asked to manipulate an array to group negative numbers to the left and positive numbers to the right, for which I presented a Java solution.
  6. I outlined the essential components that should be included in a bug report, such as detailed steps to reproduce, expected vs. actual results, screenshots or logs, environment details, and severity/priority assessment.
  7. I described the process of using a package from one project in another project using Maven, explaining that it involves specifying the dependency in the `pom.xml` file of the target project.
  8. I discussed the considerations that should be taken into account when automating APIs using Newman, including factors like endpoint URL, request parameters, headers, authentication, response validation, error handling, and reporting.
  9. I defined the concept of packages in programming, specifically in Java, explaining their use in organizing classes into namespaces to aid in better code management, modularity, and avoiding naming conflicts.

Round 3 Interview

This round was diverse, focusing on cloud management, Linux systems, and practical Java programming.

  1. The first question focused on strategies for managing permissions within Google Cloud Platform (GCP). I discussed role-based access control (RBAC) and Google's Identity and Access Management (IAM) policies as effective means to control access to cloud resources.
  2. I explained how to conceal a running process in Linux so that it doesn't occupy the terminal and persists even after closing the virtual machine (VM). I detailed how to achieve this using background processes, `nohup`, and `disown` commands to detach processes from the terminal.
  3. I implemented a Java program to identify duplicate numbers in an array and print their frequencies. My program accurately calculated the occurrences of each duplicate number, providing insights into the frequency distribution within the array.
  4. I discussed the significance of `sudo` privileges and how to become a `sudo` user in Linux, outlining the `sudo` command's usage and its role in executing commands with elevated privileges.
  5. I explored methods for connecting to a remote Linux server, including the SSH (Secure Shell) protocol, highlighting SSH's encryption capabilities and its role in secure remote access.
  6. I delved into the concept of public-key cryptography and its application in authenticating users to remote servers, explaining how public and private key pairs facilitate secure authentication without transmitting sensitive information over the network.
  7. I demonstrated how to edit environment variables in Linux using commands like `export` and by editing configuration files such as `.bashrc` or `.profile`.
  8. I provided insights into viewing existing environment variables in Linux through commands like `env` or `printenv`.
  9. I shared methods for updating environment variables in Linux, emphasizing the importance of persistence across sessions and system reboots.
  10. I confirmed my proficiency and comfort with using the terminal for various tasks, including file management, process control, and system administration.
  11. We discussed my prior experience and contributions in previous organizations, highlighting relevant projects and achievements.

Round 4: Hiring Manager Conversation

The final round was a casual 30-minute conversation with the Hiring Manager, where we focused on topics related to the prospective team, work culture, and other general aspects of the role.

I received the final selection call from HR the next day and am currently waiting for the official offer.

Interview Questions (32)

Q1
Day-to-day Role Discussion
Behavioral

Discussed my daily activities, emphasizing key responsibilities and achievements in my current role.

Q2
Maven and its Benefits
Other

Discussed the role of Maven in managing project dependencies and highlighted a primary benefit, simplifying the build process.

Q3
Method Overloading vs. Overriding
Other

Clearly distinguish between method overloading and overriding, demonstrating a solid understanding of OOP principles.

Q4
Test Automation Suite Structure
Other

Provide a detailed explanation of the structure of a test automation suite you have implemented.

Q5
Justifying POM.xml Usage
Other

Justify the use of POM.xml over alternative methods in managing project dependencies, highlighting its advantages.

Q6
Three Sum
Data Structures & AlgorithmsMedium

Given an integer array nums, return all the triplets [nums[i], nums[j], nums[k]] such that i != j, i != k, and j != k, and nums[i] + nums[j] + nums[k] == 0. Notice that the solution set must not contain duplicate triplets.

Q7
TestNG Annotation Methods
Other

Enumerate the significance and use cases of various TestNG annotation methods like @AfterSuite, @BeforeSuite, @AfterClass, etc.

Q8
Purpose of Assertions in Testing
Other

Articulate the importance of assertions in testing and how they ensure the expected behavior of the code.

Q9
Jenkins Setup and Enhancements
System Design

Describe the Jenkins setup you have implemented and discuss possible improvements and additional functionalities.

Q10
Parallel Test Case Execution
System Design

Explain the implementation of parallel test case execution, demonstrating scalability and efficiency.

Q11
Handling XPath Resolution Issues
Other

Share strategies to address challenges in finding XPath for certain test cases, displaying problem-solving skills.

Q12
Categorizing Automation Suite Type
Other

Clarify the nature of the automation suite developed, categorizing it as BDD, KDD, and DOM-based.

Q13
Method Overloading vs. Overriding with Automation Example
Other

What is the difference between overloading and overriding? Provide an example related to automation.

Q14
Debugging Java Code Snippets
Other

Debug the provided Java code snippets and determine their output. Snippet 1 involves System.exit(0) in a try-finally block. Snippet 2 demonstrates method overriding with different exception types in a superclass/subclass hierarchy. Snippet 3 involves a break statement in a try-finally block.

Q15
API Error Code Usage for Missing Resources
System Design

How are error codes typically utilized in APIs when a resource is not present?

Q16
Automating Common HTML Tags and Iframes
Other

List HTML tags commonly automated in web automation, and briefly explain how they are automated. Also, explain how iframes are handled.

Q17
Rearrange Array: Negatives Left, Positives Right
Data Structures & Algorithms

How would you manipulate an array to group negative numbers to the left and positive numbers to the right?

Q18
Essential Components of a Bug Report
Other

What essential components should be included in a bug report?

Q19
Maven Dependency Management Across Projects
Other

Describe the process of using a package from one project in another project using Maven.

Q20
Considerations for API Automation with Newman
Other

What considerations should be taken into account when automating APIs using Newman?

Q21
Concept of Packages in Programming
Other

Define the concept of packages in programming, specifically in Java.

Q22
GCP Permission Management
System Design

Strategies for managing permissions within Google Cloud Platform (GCP).

Q23
Hiding and Persisting Linux Processes
Other

How to conceal a running process in Linux so that it doesn't occupy the terminal and persists even after closing the virtual machine (VM).

Q24
Find Duplicate Frequencies in Array
Data Structures & Algorithms

Implement a Java program to identify duplicate numbers in an array and print their frequencies.

Q25
Sudo Privileges in Linux
Other

Discuss the significance of sudo privileges and how to become a sudo user in Linux, outlining the sudo command's usage and its role in executing commands with elevated privileges.

Q26
Connecting to Remote Linux Server via SSH
System Design

Explore methods for connecting to a remote Linux server, including the SSH (Secure Shell) protocol, highlighting SSH's encryption capabilities and its role in secure remote access.

Q27
Public and Private Key Authentication
System Design

Delve into the concept of public-key cryptography and its application in authenticating users to remote servers, explaining how public and private key pairs facilitate secure authentication without transmitting sensitive information over the network.

Q28
Editing Linux Environment Variables
Other

Demonstrate how to edit environment variables in Linux using commands like export and editing configuration files such as .bashrc or .profile.

Q29
Viewing Linux Environment Variables
Other

Provide insights into viewing existing environment variables in Linux through commands like env or printenv.

Q30
Updating Linux Environment Variables for Persistence
Other

Share methods for updating environment variables in Linux, emphasizing the importance of persistence across sessions and system reboots.

Q31
Terminal Proficiency
Behavioral

Discuss proficiency and comfort with using the terminal for various tasks, including file management, process control, and system administration.

Q32
Previous Work Experience and Contributions
Behavioral

Discuss prior experience and contributions in previous organizations, highlighting relevant projects and achievements.

Service Now IC2 interview experience Feb 2023
servicenow logo
Servicenow
SDE IHyderabadOffer
March 2, 202340 reads

Summary

I recently interviewed for an IC2 position at ServiceNow in Hyderabad, which involved a written test, a technical round with a senior engineer, and a hiring manager discussion. I successfully received a verbal offer.

Full Experience

I participated in a hiring drive in Hyderabad for an IC2 role. The interview process consisted of three main rounds:

Round 1

This was a written test (pen/paper) used for shortlisting candidates. The main question was based on tree data structures, specifically involving Depth-First Search (DFS).

Round 2

This round was conducted by a senior engineer. I was asked a few questions:

  1. An easy array question (specifics not recalled).
  2. To write code demonstrating inheritance concepts, including polymorphism.
  3. A SQL query requiring a join (specifics not recalled).
  4. A system design question focused on designing an efficient system to identify the top 5 most liked videos on YouTube, both across a specific region and worldwide.

Round 3

This was the Hiring Manager (HM) round. We had a good discussion for about 30 minutes regarding my current work, and he also explained details about his team. Following this, I was given a schema design question for a system somewhat similar to Uber. Based on my schema design, he asked a SQL query which again required a join.

I was given a verbal confirmation of my selection on the same day itself.

Interview Questions (3)

Q1
Code Inheritance and Polymorphism
Data Structures & Algorithms

I was asked to write code demonstrating the core concepts of object-oriented programming, specifically inheritance and polymorphism.

Q2
Design System: Top 5 YouTube Videos
System DesignHard

Design an efficient system to find the top 5 most liked videos on YouTube across a specific region and also worldwide. This involves considerations for data storage, real-time updates, querying, and scalability.

Q3
Schema Design for Ride-Sharing System
System DesignHard

I was presented with a problem to design a database schema for a system that operates similarly to Uber, considering entities like users, drivers, vehicles, rides, payments, etc.

ServiceNow IC2 Offer
servicenow logo
Servicenow
SDE IOffer
June 19, 202254 reads

Summary

I successfully navigated four rounds of interviews for an IC2 position at ServiceNow, which included technical DSA, system design, and managerial discussions, ultimately leading to an offer.

Full Experience

I went through a comprehensive interview process at ServiceNow for an IC2 role, which consisted of four distinct rounds.

Round 1: Data Structures & Algorithms

My first technical round focused on data structures and algorithms. I was presented with two problems: searching for a target in a rotated sorted array and recovering a binary search tree where two nodes had been swapped.

Round 2: Data Structures & Algorithms

The second technical round continued with more DSA challenges. I had to tackle problems related to finding the maximum element in a sliding window and making a deep copy of a linked list with random pointers.

Round 3: System Design

The third round was a dedicated system design interview. I was asked to design a parking lot system, covering both its Low-Level Design (LLD) and High-Level Design (HLD) aspects.

Round 4: Managerial Round

The final round was a managerial discussion, primarily centered around my past projects and professional experiences.

I am pleased to share that following these rounds, I received an offer for the position.

Interview Questions (5)

Q1
Search in Rotated Sorted Array
Data Structures & AlgorithmsMedium

Given a sorted array that has been rotated at some pivot unknown to you beforehand, search for a given target value. If the target is found in the array, return its index, otherwise return -1.

Q2
Recover Binary Search Tree
Data Structures & AlgorithmsMedium

Two nodes of a Binary Search Tree (BST) are swapped by mistake. Recover the tree without changing its structure.

Q3
Sliding Window Maximum
Data Structures & AlgorithmsHard

Given an array of integers nums and an integer k, return the maximum sliding window. You can assume k is always valid, 1 <= k <= nums.length.

Q4
Copy List with Random Pointer
Data Structures & AlgorithmsMedium

A linked list is given such that each node contains an additional random pointer, which could point to any node in the list, or to null. Construct a deep copy of the list.

Q5
Design Parking Lot
System DesignHard

Design a parking lot system, including both Low-Level Design (LLD) and High-Level Design (HLD) aspects. Consider features such as multiple entry/exit points, different vehicle types (e.g., car, motorcycle, bus), capacity management, and payment processing.

Servicenow | Onsite round 1 | Reject
servicenow logo
Servicenow
Rejected
April 6, 202239 reads

Summary

I recently interviewed onsite at Servicenow, which concluded with a rejection. The first round focused on a classic linked list problem and another question involving the sliding window technique.

Full Experience

I had an onsite interview at Servicenow. In the first round, I was presented with two coding challenges. The first problem asked me to clone a linked list that also contained random pointers, and I needed to do this without using extra space. The second question was generally related to the sliding window technique. Unfortunately, my interview process concluded with a rejection after this round.

Interview Questions (1)

Q1
Copy List with Random Pointer
Data Structures & AlgorithmsMedium

Clone a linked list with random pointer without using extra space.

ServiceNow | SDE2 | Hyderabad | Jul 2020 [Offer]
servicenow logo
Servicenow
SDE IIHyderabad, IN3 yearsOffer
January 2, 202131 reads

Summary

I successfully received an offer for an SDE2 position at ServiceNow in Hyderabad. The interview process consisted of an online coding assessment followed by four technical rounds, including data structures, algorithms, and system design, which I found engaging and cleared confidently.

Full Experience

Hello, I'm sharing my interview experience with ServiceNow as a way to thank this platform for all the knowledge I've gained. I have 3 years of experience, holding a B.Tech in Computer Science from a tier-1 university in India, and was working as an Analyst at Oracle at the time. My interviews took place in Hyderabad on July 31st, 2020.

Round 1: Online Coding Assessment

This round was quite easy, lasting 45 minutes with just one question: Convert binary value in a linked list to its decimal equivalent.

Round 2: Data Structures & Algorithms

I was asked to solve the Maximum Path Sum in a matrix problem. I explained both recursive and tabular (dynamic programming) approaches, including a detailed analysis of their time and space complexity. After convincing the interviewer, I wrote the code for the bottom-up DP solution on a notepad. There was also another simple question similar to pattern matching, though the interviewer wasn't looking for the most optimized standard algorithms.

Round 3: Data Structures & Algorithms

This round presented an interesting problem: Given two sorted integer arrays, A and B, find 'n' maximum sums where sum = A[i] + B[j]. The interviewer provided some hints to guide me, and I solved it using a heap-based approach, performing a dry run with test cases. The interviewer seemed satisfied with my solution.

Round 4: System Design

I was tasked with designing an online survey system, similar to SurveyMonkey. We had a thorough discussion covering both High-Level Design (HLD) and Low-Level Design (LLD).

Round 5: Data Structures & Algorithms & System Design

The first part of this round involved the classic Rod Cutting Problem: finding the maximum price by breaking a rod of length 'L' given an array of lengths and prices. I discussed the dynamic programming solution and provided pseudo-code, as the interviewer wanted to move to another design question. The second part was to design a Rate Limiting System. The interviewer was primarily interested in the Low-Level Design (LLD) and the logic for identifying and either allowing or blocking requests coming from the same user.

Overall, the process was smooth, and I received quick feedback since all rounds happened on the same day. I felt very happy after answering every question, and I had productive discussions with the engineers from ServiceNow. They offer great employee benefits and good stock options.

Interview Questions (6)

Q1
Convert Binary Linked List to Decimal
Data Structures & AlgorithmsEasy

Given a singly linked list where each node contains a 0 or 1, representing a binary number, convert the binary number to its decimal equivalent.

Q2
Maximum Path Sum in Matrix
Data Structures & AlgorithmsMedium

Find the maximum path sum in a matrix. I needed to present both recursive and tabular approaches along with time and space complexity analysis, and then write the code for the bottom-up DP solution.

Q3
Find N Max Sums (Ai + Bj) from Two Sorted Arrays
Data Structures & AlgorithmsMedium

Given two sorted integer arrays, A and B, find the 'n' largest sums formed by picking one element from A and one from B (Ai + Bj).

Q4
Design Online Survey System (e.g., SurveyMonkey)
System DesignHard

Design an online survey system similar to SurveyMonkey, covering both High-Level Design (HLD) and Low-Level Design (LLD) aspects.

Q5
Rod Cutting Problem
Data Structures & AlgorithmsMedium

Given a rod of length 'L' and an array of prices corresponding to different lengths, determine the maximum price obtainable by cutting the rod into pieces and selling them.

Q6
Design Rate Limiting System
System DesignHard

Design a rate-limiting system. The interviewer was particularly interested in the Low-Level Design (LLD) and the logic required to identify requests from the same user and decide whether to allow or block them.

Preparation Tips

I find it helpful to think about these interviews as a discussion with a friend, as it helps me calm down. I imagine myself explaining a concept to my hostel buddy. I will try to attach the notepad file from the interview to help others understand the discussions better.

Have a Servicenow Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Servicenow.