ServiceNow USA Staff Offer

servicenow logo
servicenow
Staff Software EngineerusaOffer
November 22, 20251 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.

Discussion (0)

Share your thoughts and ask questions

Join the Discussion

Sign in with Google to share your thoughts and ask questions

No comments yet

Be the first to share your thoughts and start the discussion!