Software engineers at Infosys often work as part of a client's product squad, delivering small changes every week to a living platform: a retailer's loyalty system, a telecom operator's customer messaging, or a manufacturer's connected machines sending data from the field. Prepare to discuss steady delivery, growing teams, data that arrives late, consent rules, points that must never be counted twice, and pressure to skip tests. What to show here: small safe releases, tested code and good habits shared with the team. Each question below has what the interviewer is checking, an answer frame and a sample spoken answer to adapt.
How Infosys hires, in its own words, and its questions for every job →
“I changed the default sort order on a retail client's category page from newest to most popular. It was a one-line change. Within a day, the client's merchandising team noticed that new products got far fewer views, which affected their launches. I had not asked who depended on the old order. We made the sort a setting per category so they could choose. Since then, I treat any change that customers see as a release with a flag and a note to the client's business teams, however small the code. The result was your result.”
Weak answers judge a change by its line count, or show no change in habits after the surprise.
“Our team on a telecom client's platform doubled in a month ahead of a big release. Setup alone used to take days, so I wrote a script that built the local environment and a one-page guide to the codebase. Each new engineer got a small real ticket on their first day and a pairing partner for the first week. We kept code review strict, but reviewers explained the reason for each comment rather than just requesting changes. I also added automated checks for the style rules, so reviews focused on design. Within two weeks new people were shipping alone. The result was your result.”
Weak answers leave new people to find their way, or lower review standards to move faster.
“Each reading should carry the time it was measured on the machine, and I would store the time it arrived separately. Raw readings go into an append-only store first, so nothing is lost and processing can be rerun. Hourly summaries are computed by measurement time, not arrival time, and are recomputed when late readings arrive for an old hour. Reports should show how many machines have reported for each period, so a low number is understood as missing data rather than a real drop. Machine clocks drift, so I would check readings against arrival time and flag readings from the future.”
Weak answers summarize by arrival time, or treat a late batch as a sudden spike.
“Consent should be stored per customer, per channel and per kind of message, because someone may accept service alerts by text but refuse marketing everywhere. Every team that sends messages must go through one decision service instead of choosing channels themselves. That service checks the message type, the customer's consent and preferences, quiet hours for the customer's region, and falls back to another allowed channel if the first fails. Service messages such as an outage notice have their own rules and cannot be switched off. Every decision, including a refusal, is logged, so a complaint can be traced.”
Weak answers let each sender check consent in its own way, or treat marketing and service messages alike.
“I would keep a ledger, where every earn, spend and expiry is a separate entry, and the balance is the sum. A single balance field is easy to corrupt. Each earn entry is keyed by the purchase id, so a purchase sent twice from a store terminal cannot earn twice. Expiry is applied per earn entry, and spending uses the oldest points first. At online checkout, points are reserved with an entry that is confirmed when the order completes or released if it fails, so two carts cannot spend the same points. A refund reverses the matching earn. The balance is cached for display but rebuilt from the ledger.”
Weak answers keep one balance number and add or subtract from it, with no way to handle duplicates or refunds.
“Most tests should not need the other services. I would test my logic with simple fakes that return known responses, which keeps the tests fast. The risk is that a fake drifts from reality, so I would add contract tests: recorded examples of each dependency's requests and responses that both my team and the owning team check in their pipelines. If they change a field, their build tells them my contract broke before release. A small number of integration tests run against real test instances nightly, not on every commit. This way the pipeline stays fast and still catches a changed contract.”
Weak answers mock everything and never verify the mocks, or need every service running for every test.
“I would first look at the change and the tests. Often the suite takes less time than the argument, and the relevant tests can run in minutes. I would explain that a broken checkout during the sale costs far more than a short delay. Then I would offer options: run the tests that cover the changed area now and the rest afterwards, release the change behind a flag so it can be turned off in seconds, or ship a smaller version tonight. If the product owner still insists, I would ask my lead to join and record the decision, so the risk is owned openly.”
Weak answers skip the tests to please the product owner, or refuse flatly with no alternative.
“I value steady, careful delivery: small changes, good tests, and a platform that gets a little better every week. Infosys delivers IT services to client companies, and much of that is exactly this kind of work, inside squads that mix client engineers with our own. I like that setting because good habits have to be shared, not assumed. I have worked on a live loyalty platform where a mistake showed up in a customer's account the same day, and that taught me discipline. I want to grow into an engineer who raises the standard of whichever team I join.”
Weak answers want only greenfield projects, or say nothing about working with a client's own engineers.
No figures on this page: pay depends on the level, the city and the offer in front of you. When the offer comes, the free salary negotiation script helps with that part.
ClapAssist is an AI interview assistant for Mac and Windows. It listens to the interview on your computer and shows you what to say, in short lines you can read while you talk. Your live interview audio and screen are never stored. Your resume and notes are saved to your account so the app fills them in on any computer. It is hidden from screen share on every plan, including Free; only you can see it.