Senior Software Engineer (India)
Role summary
Senior Software Engineer needed for an Engineering team focused on building predictive, inclusive, and fair interviewing products. The role involves owning complex, full-stack web application projects, making architectural decisions, and improving technical quality. Responsibilities include designing and building sophisticated applications, managing ambiguous projects end-to-end, identifying technical quality issues, mentoring junior engineers, and collaborating with cross-functional teams. Requires 7+ years of experience in full-stack development, expertise in languages like Ruby, Python, React, TypeScript/JavaScript, and experience with system architecture, cloud infrastructure, and DevOps practices. This is a remote position open only to candidates residing in Bengaluru, India.
We're Karat, the world's largest interviewing company.
Karat is transforming organizations around the world. We provide a powerful system for technical leaders at companies like PayPal, Atlassian, and Citi who want to take control of how they hire top engineers, elevate their teams and contractors, and stay ahead. At the core of Karat’s system are live, expert-led interviews, analytics designed to give leaders maximum visibility, and the most robust interview performance dataset in the world.
Come join our Engineering team
Our Software Engineering team is dedicated to building the world’s most predictive, inclusive, and fair interviewing products for our clients and technical candidates alike.
What you will do
As a Senior Software Engineer at Karat, you'll own complex, technically demanding projects on our flagship interviewing platform and drive them end-to-end. You'll make significant architectural decisions, actively improve technical quality across the team's codebase beyond your own lane, and collaborate closely with engineering leadership to raise the bar on how we build.
This position requires a schedule that overlaps with U.S. business hours.
The experience you will bring
This position is only available to candidates residing in Bengaluru (formerly known as Bangalore). While our team operates 100% remotely, we are currently limiting hiring to this specific location. Applications from other cities in India will not be considered at this time.
Applicants, please note: submissions not 100% in English will not be considered.
Additional Information
By applying for a position, you consent to the processing of your personal data in accordance with Karat’s Employee and Contractor Privacy Notice found here.
Statement of Inclusivity
In keeping with our beliefs and goals, no employee or applicant will face discrimination or harassment based on: race, color, ancestry, national origin, religion, age, gender, marital/domestic partner status, sexual orientation, gender identity or expression, disability status, or veteran status. Above and beyond discrimination and harassment based on “protected categories,” we also strive to prevent other subtler forms of inappropriate behavior (i.e., stereotyping) from ever gaining a foothold in our office. Whether blatant or hidden, barriers to success have no place at Karat.
We value a diverse workforce: people of color, womxn, and LGBTQIA+ individuals are strongly encouraged to apply.
If you have a disability or special need that requires accommodation, please let us know at accommodation@karat.com.
Sample Karat interview questions
- 1
Design a system for managing data versioning in a distributed environment.
system designmedium - 2
Count Anagrammatic Substrings Count the number of anagrammatic substrings from one string present in another. Input: s = "abab", p = "ab" Output: [0, 1, 2] Explanation: The substrings "ab", "ba", and "ab" starting at indices 0, 1, and 2 respectively are all anagrams of the string "ab".
codingmedium - 3
Buildings with an Ocean View Find all buildings that have an ocean view. Input: heights = [1,2,3,4] Output: [3] Explanation: Since the ocean is to the right, only the rightmost tallest building (index 3) is not blocked by any others.
codingmedium - 4
Search for a Word in a 2D Board Search for a word in a 2D board of characters. Input: board = [["C","A","A"],["A","A","A"],["B","C","D"]], word = "AAB" Output: TRUE Explanation: DFS traverses adjacent matching letters perfectly, finding "AAB" without improperly revisiting any cells.
codingmedium - 5
Merge K Sorted Linked Lists Merge K sorted linked lists. Input: lists = [[2,2,3],[1,5]] Output: [1,2,2,3,5] Explanation: Extracts the smallest current node iteratively using a priority queue to build a single merged and sorted linked list.
codingmedium
Sign up for a personalized interview prep pack tailored to this role.