CRED · Software Engineer
Updated · 2026-10-02

CRED Software Engineer
Interview Guide

THE 60-SECOND BRIEF

As a Software Engineer at CRED, you are at the center of a high-velocity ecosystem that manages complex financial data and premium user experiences. The role is not merely about writing code; it is about building robust, scalable infrastructure that handles high-concurrency transactions while maintaining the trust and security that our members expect. You will contribute to the core services that drive our platform, ensuring that every interaction—from bill payments to credit insights—is seamless, performant, and reliable. The work here is characterized by high technical rigor and the need for architectural elegance. You will frequently interact with cross-functional teams, including product managers and designers, to translate ambiguous business requirements into concrete technical solutions.

This guide is scoped to a Software Engineer candidate at CRED.

CRED candidates report 2 rounds over 2-4 weeks. The stages below are what candidates describe, not a published process.

Machine CodingExtending a Boilerplate CodebaseTimestamp Range Queries

17 min read

Browse Software Engineer questions

See the practice prompts

13Practice promptsAcross five skill areas

As a Software Engineer at CRED, you are at the center of a high-velocity ecosystem that manages complex financial data and premium user experiences. The role is not merely about writing code; it is about building robust, scalable infrastructure that handles high-concurrency transactions while maintaining the trust and security that our members expect. You will contribute to the core services that drive our platform, ensuring that every interaction—from bill payments to credit insights—is seamless, performant, and reliable. The work here is characterized by high technical rigor and the need for architectural elegance. You will frequently interact with cross-functional teams, including product managers and designers, to translate ambiguous business requirements into concrete technical solutions. Whether you are optimizing backend latency or extending event-driven architectures, you will play a critical role in shaping the technical roadmap of one of India’s fastest-growing fintech platforms. ##### Tip CRED values engineers who prioritize system design and clean, maintainable code over quick-fix solutions. During your interviews, emphasize why you chose a particular design pattern rather than just how you implemented it.

01

Initial Screening

reported

Gauge alignment with technical stack and cultural values.

What to demonstrate

  • Gauge alignment with technical stack and cultural values
  • Depth in Machine Coding

How to prepare

  • Be able to walk your CV end to end in two minutes, and say why this company specifically.
  • Have your salary expectations, notice period and location constraints ready, and ask for the rest of the loop in writing.
CRED Software Engineer candidate reports ↗
02

Technical Depth

reported

Engage in machine coding rounds to test ability to extend and maintain existing systems.

What to demonstrate

  • Engage in machine coding rounds to test ability to extend and maintain existing systems
  • Depth in Machine Coding

How to prepare

  • Answer aloud and timed: Implement a service that consumes and processes event logs to display real-time dashboard data.
  • Answer aloud and timed: Design a data structure to handle high-frequency event storage and retrieval.
CRED Software Engineer candidate reports ↗

PracHub editorial advice for the preparation topics above.

01

Think aloud

Your interviewer is interested in your thought process as much as the final result. Explain your reasoning as you code.

02

Clarify the scope

Before you start, ask questions to define the boundaries of the problem. This prevents you from over-engineering or missing key requirements.

03

Prioritize readability

Even in a time-constrained machine coding round, clean variable naming and modular logic are prioritized over clever, unreadable "hacks."

04

Review your own code

Before submitting, take a moment to walk through your solution as if you were doing a peer review. This often helps you catch small bugs or logic gaps.

Choose a category, try a prompt, then open its approach, worked solution or follow-up when you need it.

10 technical prompts0 include a worked solution

Extend a provided codebase to compute specific metrics (e.g., event-based analytics) within a defined timestam

medium
Machine Coding and System Extension

Extend a provided codebase to compute specific metrics (e.g., event-based analytics) within a defined timestamp range.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Refactor existing classes to improve modularity and extensibility while maintaining current functionality.

medium
Machine Coding and System Extension

Refactor existing classes to improve modularity and extensibility while maintaining current functionality.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Implement a service that consumes and processes event logs to display real-time dashboard data.

medium
Machine Coding and System Extension

Implement a service that consumes and processes event logs to display real-time dashboard data.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Demonstrate clean code practices, including error handling and interface design, while working with a pre-exis

medium
Machine Coding and System Extension

Demonstrate clean code practices, including error handling and interface design, while working with a pre-existing codebase.

Approach
  1. Restate the input: its shape, its size, and what is guaranteed about it.
  2. Name the brute-force solution and its complexity before improving on it.
  3. Choose the data structure from the access pattern, not from familiarity.
  4. State the target complexity and say which constraint rules the naive version out.
Follow-up
  • How does this change if the input no longer fits in memory?
  • What is the worst case, and how likely is it on real data?

Built from the rounds and topics CRED candidates report.

Small steps. Visible outcomes.0 / 7 completed
ONE WEEK · YOUR PACE

Prepare, practise & reflect

One practical outcome each day. Spend longer where you need it.

0 / 7 done
01Map the CRED loop
  • Write out the reported sequence: Initial Screening, Technical Depth.
  • For each round, write one sentence on what it is judging, from the description above, and mark the one you are least ready for.

Deliverable: A one-page map of the 2 reported rounds, with the weakest marked.

02Work Machine Coding
  • Spend the session on Machine Coding, which CRED candidates report being tested on.
  • Write one worked example in Machine Coding and time yourself on it.

Deliverable: One timed worked example in Machine Coding.

03Work Extending a Boilerplate Codebase
  • Spend the session on Extending a Boilerplate Codebase, which CRED candidates report being tested on.
  • Write one worked example in Extending a Boilerplate Codebase and time yourself on it.

Deliverable: One timed worked example in Extending a Boilerplate Codebase.

04Work Timestamp Range Queries
  • Spend the session on Timestamp Range Queries, which CRED candidates report being tested on.
  • Write one worked example in Timestamp Range Queries and time yourself on it.

Deliverable: One timed worked example in Timestamp Range Queries.

05Answer out loud: Machine Coding and System Extension
  • Answer aloud, timed: Extend a provided codebase to compute specific metrics (e.g., event-based analytics) within a defined timestamp range.
  • Answer aloud, timed: Refactor existing classes to improve modularity and extensibility while maintaining current functionality.

Deliverable: Spoken answers to 2 reported Machine Coding and System Extension question(s), under time.

06Answer out loud: Technical and Architectural Thinking
  • Answer aloud, timed: How would you design a system to handle high-concurrency payment processing?
  • Answer aloud, timed: Explain the trade-offs between SQL and NoSQL databases in a fintech context.

Deliverable: Spoken answers to 2 reported Technical and Architectural Thinking question(s), under time.

07Dry run for CRED
  • Run one full mock under time, then write down the two questions you most want to ask your interviewers.

Deliverable: A completed timed mock and two questions to ask.

Expand any day for tasks and deliverables. Your progress is saved on this device.

Behavioural rounds judge the decision you made and what it cost.

Describe a time you had to debug a significant performance bottleneck in a production system.

medium
Technical and Architectural Thinking

Describe a time you had to debug a significant performance bottleneck in a production system.

Approach
  1. Pick a story where you made the decision, not one where you watched it.
  2. State the situation in two sentences and spend the rest on the reasoning.
  3. Give the blast radius: what could have broken, and what you measured.
  4. Name the disagreement and how you resolved it with evidence.
Follow-up
  • What would you do differently if you ran that again?
  • How did you know your change caused the improvement?

Turn a code review disagreement into a decision

easy
code reviewoptimistic concurrencycommunication

A colleague's change updates a row with UPDATE resource SET version = version + 1 WHERE resource_id = $1 AND version = $2 and treats an affected-row count of zero as a successful no-op. You read that as a silently lost update; they think returning 200 is friendlier to clients than returning a conflict. Describe how you have handled a review disagreement of this shape: what goes in the comment, when you leave the thread, and who decides. Then write the comment you would leave here, in under 80 words.

Approach
  1. Sort the disagreement before writing anything. A silently discarded write is a correctness claim about data; the choice between 409 and 412 is taste. Only the first justifies blocking a merge, and saying which one you are doing is most of the value of the comment.
  2. Make the claim reproducible in the comment itself with an interleaving rather than a principle: A reads version 7, B reads version 7, B commits version 8, A's predicate matches zero rows, A is told it succeeded and A's edit is gone.
  3. Offer the alternative with its cost attached: return 409 carrying the current version and the revision that won, so the client can re-read and re-apply. Note that automatic retry is not the fix, because a retry re-reads the winner's state and reapplies an intent formed against data that no longer exists.
  4. Apply an escalation rule you can state: two round trips on the thread, then a call, and the service's owner decides rather than the reviewer. A reviewer who cannot be overruled is a bottleneck with extra steps.
Follow-up
  • Where would you put the test that fails if someone reintroduces the swallowed zero rowcount?
  • The author says clients cannot handle a 409. How do you check whether that is true?

Tell callers you do not own that their integration breaks

medium
deprecationcompatibilitystakeholders

A field in a write endpoint's response must change shape. You own the endpoint; you do not own the four internal callers or the outbound webhook consumers who read it. Describe a deprecation you were responsible for: what you shipped first, how you established who was actually reading the field, the window you gave and what set its length, what you did about the consumer who never moved, and how you decided removal was safe. Name the signal you used, not the announcement you sent.

Approach
  1. Establish the reader set empirically rather than from a wiki of owners: per-field usage counters keyed by principal, or access logs attributed to a consumer. State the blind spot of whichever you pick, since a consumer that reads the field only on a monthly job will not appear in a week of logs.
  2. Ship additive first. Populate the new field alongside the old one so no reader is forced to move, which is also what keeps a rolling deploy safe, because old and new instances answer the same requests at the same time and a rollback must still find the old shape present.
  3. Set the window from the slowest legitimate consumer's release cadence, not from your calendar, and decide separately what to do for a consumer with no release process at all, such as an external webhook endpoint you can only email.
  4. Convert silence into evidence before you rely on it: a short, low-traffic removal window that makes a still-dependent consumer fail visibly and loudly while you are watching, rather than at three in the morning after you have moved on.
Follow-up
  • How would you detect a consumer that reads the field only during a monthly export?
  • One caller refuses to move and has a commercial relationship behind it. What changes in your plan and what does not?
  • 01

    Describe a time you had to debug a significant performance bottleneck in a production system.

  • 02

    A colleague's change updates a row with UPDATE resource SET version = version + 1 WHERE resource_id = $1 AND version = $2 and treats an affected-row count of zero as a successful no-op. You read that as a silently lost update; they think returning 200 is friendlier to clients than returning a conflict. Describe how you have handled a review disagreement of this shape: what goes in the comment, when you leave the thread, and who decides. Then write the comment you would leave here, in under 80 words.

  • 03

    A field in a write endpoint's response must change shape. You own the endpoint; you do not own the four internal callers or the outbound webhook consumers who read it. Describe a deprecation you were responsible for: what you shipped first, how you established who was actually reading the field, the window you gave and what set its length, what you did about the consumer who never moved, and how you decided removal was safe. Name the signal you used, not the announcement you sent.

PracHub preparation framework ↗
How long should I spend preparing for the machine coding round?

Dedicate significant time to practicing with IDE-based environments rather than just whiteboard coding. Focus on building small, modular applications from scratch to improve your speed and architectural thinking.

CRED Software Engineer candidate reports ↗
What differentiates successful candidates from those who are rejected?

Successful candidates consistently communicate their thought process throughout the interview. They don't just write code; they explain the "why" behind their design decisions and proactively address potential issues.

CRED Software Engineer candidate reports ↗
Is the interview process strictly focused on algorithms?

No. While algorithmic proficiency is a baseline, we place a much higher emphasis on practical system design and your ability to write clean, maintainable code in a real-world context.

CRED Software Engineer candidate reports ↗
What topics does CRED test in interviews?

CRED interviews most often cover Dynamic Programming (DP), Integration Testing, API Testing, End-to-End Test Case Design, and Root Cause Analysis (RCA). The exact emphasis depends on the specific role you apply for.

CRED Software Engineer candidate reports ↗
Sources & methodology 3 sources ↗

No official company page is cited. Rounds and questions come from candidate reports and PracHub editorial material; each source shows the date it was read.