Assessment tips
- Confirm the current ServiceNow pattern from the drive mail before practising old papers
- Finish one problem or section fully before starting the next
- Revise the fundamentals listed in the round table on this page
How ServiceNow fresher interviews usually run, synthesized from Associate Software Engineer campus and off-campus reports. We reorganized OA → technical → hiring-manager patterns, added outcome notes, and flagged that the final round often includes real system design - treat this as a prep map, not a script.
Typical loop (candidate-reported): Online Assessment (often 60 min: MCQs + one coding problem) → Technical 1-2 → Hiring manager (behavioral + design) → sometimes a short culture/HR close. Duration often 2-3 weeks from application to offer.
Eligibility (from student reports): 7.5+ CGPA or 75% (some OA cutoffs cited around 7.0).
Fresher package ballpark (from student reports): Analyst: ₹28-38 LPA. Confirm on your offer letter.
| Round | Duration | What they test |
|---|---|---|
| Online Assessment | 90-120 min | 2-3 coding problems (DSA) |
| Technical Round 1 | 45-60 min | DSA + detailed project discussion |
| Technical Round 2 | 45-60 min | DSA / system design basics |
| Hiring Manager / HR | 30-45 min | Behavioural + team fit |
These are condensed from public candidate write-ups for the Associate Software Engineer role. Two calibrations worth making: the OA is short and MCQ-heavy (typically 15 MCQs plus a single coding question in 60 minutes, with a CGPA cutoff around 7.0), and the “HR” round is not HR - it is a hiring-manager round that includes real system design. No ITSM or platform-specific knowledge is expected from freshers.
Round 1 - Online test (60 min, HackerRank)
Round 2 - Technical 1 (60 min)
Round 3 - Technical 2 (60 min)
Round 4 - Hiring manager (reported as long, ~90 min)
Outcome: Selected. The candidate’s advice was to ask for a hint when stuck - the interviewers were reported as supportive rather than adversarial.
Takeaways
Outcome: Selected.
Takeaways
What both accounts share: three or four coding problems per round, each with an optimisation follow-up - volume and speed matter more than one hard problem. Be ready to sketch your project architecture, and do not walk into the final round assuming it is a formality; system design shows up there in both accounts.
Profile: India campus/off-campus pipeline, Hyderabad location cited in the report
Round 1 - DSA + JavaScript (~60 min)
Round 2 - DSA + project discussion
Round 3 - Hiring manager (DSA + fundamentals)
Round 4 - HR / culture fitment (~30 min)
Outcome: Offer reported. Takeaway: Treat JavaScript and fundamentals as equal citizens with DSA; several 2025 loops run four rounds with HR explicitly labelled culture fitment.
Round 2 - Technical 1 (60 min): Three DSA problems coded in Notepad; interviewer pushed time and space complexity on each; hints on the third problem were normal.
Round 3 - Technical 2: E-commerce database design discussion, then DSA including non-overlapping intervals and a bitwise/“ugly number” style problem.
Round 4 - Hiring manager: Resume deep dive, OOP standard questions, a puzzle reduced to binary search, then HR-style prompts (strengths, weaknesses, why ServiceNow).
Outcome: Selected (reported). Takeaway: DB design and OOP show up even when the job title is generic “Associate Software Engineer.”
After technical rounds, ServiceNow usually closes with a short HR / hiring-manager conversation: motivation, location, notice period, and a couple of behavioural stories. Prepare those answers on the dedicated page rather than cramming them into this hub.
Use these as frames, not scripts - interviewers probe follow-ups.
Q. What is a closure in JavaScript, and where would you use one?
A. A closure is a function bundled with a reference to the lexical environment where it was created, so it keeps access to those outer variables after the outer function has returned. For example, function counter() has a local let n = 0 and returns function() with n = n + 1 and returning n; each call to counter() produces an independent counter whose n cannot be touched from outside. Closures are how JavaScript expresses private state, memoisation caches, and once-only initialisation. The classic bug is capturing a loop variable declared with var, which shares one binding across all iterations - switching to let creates a fresh binding per iteration and fixes it.
Q. How is the value of this determined in JavaScript?
A. For a normal function, this is decided at call time by how the function is invoked: as a method it is the object before the dot, as a plain call it is undefined in strict mode and the global object otherwise, with new it is the freshly created object, and with call, apply, or bind it is whatever you pass. Arrow functions have no this of their own - they capture it lexically from the enclosing scope, which is why arrows are the right choice for callbacks inside a method and the wrong choice for object methods themselves. The common interview trap is passing obj.method as a callback, which loses the receiver; obj.method.bind(obj) or an arrow wrapper preserves it.
Q. Explain the JavaScript event loop and how async/await relates to promises.
A. JavaScript runs one call stack; when it is empty the event loop drains the microtask queue completely, then takes one macrotask (a timer or I/O callback) and repeats. Promise callbacks are microtasks, so a resolved promise’s then runs before a setTimeout with zero delay that was scheduled earlier. async/await is syntax over promises: an async function returns a promise, and await suspends the function and resumes it in a microtask when the awaited promise settles. Because microtasks starve macrotasks, an infinite chain of promise resolutions will block timers and rendering entirely.
Q. What is prototypal inheritance, and how does class syntax relate to it?
A. Every JavaScript object has an internal link to a prototype object; when a property is not found on the object itself, the engine walks that prototype chain until it hits null. A constructor function’s prototype property becomes the prototype of objects created with new, which is why methods defined on Foo.prototype are shared by every instance rather than copied per object. The ES6 class keyword is syntactic sugar over exactly this mechanism - class methods land on the prototype and extends sets the prototype chain - it does not introduce classical classes. This matters at ServiceNow because Glide server-side scripting has historically used prototype-based object definitions rather than class syntax.
Q. Find the length of the longest substring without repeating characters.
A. Use a sliding window with a map from character to its last seen index. Move the right pointer across the string; when you meet a character already inside the window, jump the left pointer to one past that character’s stored index rather than moving it one step at a time. Update the answer as right minus left plus one at every step, and record the current index in the map. This is O(n) time with one pass and O(k) space where k is the alphabet size, which is the answer interviewers want after you dismiss the O(n squared) substring check.
Assessment tips
Interview tips
HR tips
These links are research inputs we used to map round structure and recurring questions - not copied page mirrors. We reorganized reports into process tables, outcome notes, and prep takeaways for ServiceNow.
Experience cards cite GeeksforGeeks and Roundz write-ups. Cross-check the current drive mail for timings.
For the company overview and FAQs, see the ServiceNow hub. For behavioural STAR prompts, use the ServiceNow HR page. For OA drills, use ServiceNow on placementpapers.app.