Software Engineer

Software EngineerL6Hard

The interview process for a Software Engineer (L6) at CRED is designed to assess a candidate's technical expertise, problem-solving abilities, system design skills, and cultural fit. The process typically involves multiple rounds, each focusing on different aspects of a candidate's profile.

Rounds·4

Timeline·~7d

Experience·6 - 10 yrs

Comp band·US$280000 - US$350000

Interview time·210 min

Evaluation

What they measure.

  • Technical Depth: Proficiency in core computer science concepts, algorithms, and data structures.
  • Problem-Solving: Ability to break down complex problems, analyze them, and devise efficient solutions.
  • System Design: Capability to design scalable, reliable, and maintainable systems.
  • Coding Skills: Clean, efficient, and well-structured code.
  • Behavioral Aspects: Communication, teamwork, leadership, adaptability, and alignment with CRED's values.
  • Domain Knowledge: Understanding of FinTech, payments, and CRED's business.

Preparation

How to prepare.

Tips

  1. Brush up on fundamental Data Structures and Algorithms (Arrays, Linked Lists, Trees, Graphs, Hash Tables, Sorting, Searching).
  2. Practice coding problems on platforms like LeetCode, HackerRank, focusing on medium to hard difficulty.
  3. Deep dive into System Design concepts: Scalability, Availability, Consistency, Databases (SQL vs NoSQL), Caching, Load Balancing, Message Queues, Microservices.
  4. Review common behavioral interview questions and prepare STAR method (Situation, Task, Action, Result) answers.
  5. Understand CRED's business model, products, and recent news.
  6. Prepare questions to ask the interviewer about the role, team, and company culture.

Study plan

Fig · Study plan — 04 phases

01 / 04
01

Phase 01 of 04

Data Structures and Algorithms

Weeks 1-2: DSA fundamentals and practice (2-3 problems/day).

Weeks 1-2: Focus on Data Structures and Algorithms. Cover topics like arrays, linked lists, stacks, queues, trees (binary, BST, AVL), heaps, hash tables, graphs. Practice problems related to searching, sorting, recursion, dynamic programming. Aim for 2-3 problems per day.

Questions

Commonly asked.

  • Design a URL shortening service like TinyURL.
  • How would you design a rate limiter?
  • Explain the difference between SQL and NoSQL databases and when to use each.
  • Describe a time you disagreed with a team member. How did you resolve it?
  • What are the challenges of building a distributed system?
  • How would you optimize a slow database query?
  • Tell me about a project you are particularly proud of and your role in it.
  • How do you handle production issues and incidents?
  • What are your thoughts on microservices vs. monolithic architecture?
  • Describe a situation where you had to make a difficult technical decision with incomplete information.

Locations

Regional differences.

Fig · Regions — 02 locations

01 / 02

Location

Bangalore

Interview focus

Deep understanding of distributed systems and scalability.Experience with high-throughput, low-latency systems.Strong grasp of cloud-native technologies (AWS/GCP/Azure).Ability to lead technical discussions and mentor teams.Understanding of CRED's business domain and challenges.

Common questions

  • Discuss a complex system you designed and scaled.
  • How would you handle a sudden surge in user traffic on our platform?
  • Describe a time you had to mentor junior engineers. What was your approach?
  • What are your thoughts on the current FinTech landscape in India?
  • Tell me about a challenging bug you debugged in a production environment.

Tips

  • Be prepared to discuss your contributions to open-source projects.
  • Research CRED's recent product launches and business strategies.
  • Highlight experience with specific technologies used at CRED (e.g., Kafka, Kubernetes, Go, Java).
  • Emphasize leadership and team collaboration skills.
  • Be ready to articulate your career growth aspirations and how they align with CRED's vision.

Rounds

Round-by-round.

Expand a step for evaluation criteria, sample questions, and prep notes.

Hard

Data Structures And Algorithms · 60 min · Software Engineer / Senior Software Engineer

This round focuses on your fundamental computer science knowledge. You will be asked to solve 1-2 coding problems on a shared editor. The interviewer will assess your ability to understand the problem, devise an efficient algorithm, write clean and correct code, and analyze its complexity. Expect questions on data structures, algorithms, and potentially some basic system design concepts.

What they look for

Strong analytical skills.Proficiency in coding.Ability to think logically and break down problems.Understanding of time and space complexity.

Evaluation

  • Correctness of the algorithm.
  • Efficiency (Time and Space Complexity).
  • Code clarity and readability.
  • Ability to handle edge cases.
  • Problem-solving approach.

Sample questions

  • Given an array of integers, find the contiguous subarray with the largest sum.

    ArrayDynamic ProgrammingKadane's Algorithm
  • Implement a function to reverse a linked list.

    Linked ListPointers
  • Find the k-th smallest element in a binary search tree.

    TreeBinary Search TreeRecursion

Prep for this round

  1. 01Practice coding problems regularly.
  2. 02Understand the time and space complexity of your solutions.
  3. 03Be able to explain your thought process step-by-step.
  4. 04Test your code thoroughly with various inputs, including edge cases.

Common rejection reasons

  • ×Inability to articulate thought process clearly.
  • ×Lack of fundamental understanding of data structures and algorithms.
  • ×Poor coding practices (e.g., unreadable, inefficient code).
  • ×Failure to consider edge cases and constraints.

DSA

Coding questions at CRED.

Frequently reported on CRED loops

Other guides

More at CRED.