i
Iris
Software
Proud winner of ABECA 2025 - AmbitionBox Employee Choice Awards
Filter interviews by
Use git bisect command to find the commit that caused the build failure
Use 'git bisect start' to start the bisect process
Mark the current commit as bad with 'git bisect bad'
Mark a known good commit with 'git bisect good
Git will automatically checkout commits for testing, mark them as good or bad until the culprit commit is found
SQL join tables to combine data from multiple tables based on a related column
Use JOIN keyword to combine tables based on a related column
Types of joins include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN
Specify the columns to join on using ON clause
Example: SELECT * FROM table1 INNER JOIN table2 ON table1.id = table2.id
Microservices can introduce complexity, communication overhead, and potential performance issues.
Increased complexity due to managing multiple services
Communication overhead between services
Potential performance issues due to network latency
Difficulty in maintaining consistency across services
RFPs are Requests for Proposals used to solicit bids from vendors for a project or service.
RFPs outline project requirements, timelines, and evaluation criteria
They are used in procurement processes to select the best vendor
Commonly used in industries like construction, IT, and consulting
Examples include government agencies issuing RFPs for infrastructure projects
What people are saying about Iris Software
Multithreading in Java allows multiple threads to execute concurrently, improving performance and responsiveness.
Multithreading is achieved by extending the Thread class or implementing the Runnable interface.
Threads share the same memory space but have their own program counter, stack, and local variables.
Java provides synchronized keyword and locks to prevent data corruption in multithreaded environments.
Example...
Lambdas in Java are anonymous functions that allow you to pass behavior as an argument to a method.
Lambdas are used to implement functional interfaces with a single abstract method.
They provide a concise way to write code by reducing boilerplate.
Syntax: (parameters) -> expression or statement block
Example: (int a, int b) -> a + b
API chaining involves making multiple API calls in sequence, where the output of one call is used as input for the next.
API chaining allows for complex workflows by linking multiple API calls.
Example: Fetching user data from one API, then using that data to get user-specific settings from another.
It can improve efficiency by reducing the number of requests needed to gather related data.
Error handling is crucial; i...
Exceptions are events that disrupt the normal flow of a program, requiring special handling.
Exceptions can be categorized into checked and unchecked exceptions. For example, IOException is checked, while NullPointerException is unchecked.
In Java, exceptions are handled using try-catch blocks. For instance, try { // code } catch (Exception e) { // handle exception }.
Custom exceptions can be created by extending the...
JDK 8 features include lambda expressions, functional interfaces, streams, and default methods.
Lambda expressions allow you to write code in a more concise and readable way.
Functional interfaces enable the use of lambda expressions.
Streams provide a way to work with sequences of elements efficiently.
Default methods allow interfaces to have concrete methods.
Date and Time API improvements.
Use a sorting algorithm like bubble sort or quicksort to arrange elements in ascending order.
Use a sorting algorithm like bubble sort, quicksort, or merge sort to rearrange elements in ascending order.
For example, you can implement bubble sort to compare adjacent elements and swap them if they are in the wrong order.
Another example is using quicksort to divide the array into smaller subarrays and recursively sort ...
I appeared for an interview in Jan 2025.
Experienced Senior UX Designer with a proven track record of creating user-centered designs.
Over 8 years of experience in UX design
Led multiple successful projects from concept to launch
Strong expertise in user research, wireframing, prototyping, and usability testing
Collaborated with cross-functional teams to deliver innovative solutions
Received awards for outstanding design work
Seeking new challenges and opportunities for growth.
Desire for new challenges and learning opportunities
Lack of career advancement in current company
Seeking a more collaborative and innovative work environment
My salary expectations are in line with industry standards for a Senior UX Designer with my level of experience and skills.
Research industry standards for Senior UX Designer salaries
Consider my level of experience and skills when determining salary expectations
Be open to negotiation based on the overall compensation package offered
I applied via Approached by Company and was interviewed in Sep 2024. There was 1 interview round.
Agile ceremonies are key meetings in Agile methodology where QA plays a crucial role in ensuring quality throughout the development process.
QA participates in Agile ceremonies such as Sprint Planning, Daily Stand-ups, Sprint Review, and Sprint Retrospective to provide input on quality aspects.
QA helps in defining acceptance criteria for user stories during Sprint Planning to ensure that the team understands the quality...
Story estimation techniques in Agile involve using relative sizing, planning poker, and t-shirt sizing.
Relative sizing compares the size of one story to another to estimate effort.
Planning poker involves team members individually estimating stories and then discussing differences.
T-shirt sizing categorizes stories into small, medium, large, etc. based on complexity.
Fibonacci sequence can be used for story points (1, 2,...
Updating the scrum board involves adding, moving, and removing tasks to reflect the current status of the project.
Regularly update the scrum board with the progress of tasks
Move tasks from 'To Do' to 'In Progress' to 'Done' columns as they are worked on and completed
Remove tasks that are no longer relevant or have been completed
Ensure the team is aware of any changes made to the scrum board
SQL Joins are used to combine rows from two or more tables based on a related column between them.
INNER JOIN: Returns rows when there is at least one match in both tables
LEFT JOIN: Returns all rows from the left table and the matched rows from the right table
RIGHT JOIN: Returns all rows from the right table and the matched rows from the left table
FULL JOIN: Returns rows when there is a match in one of the tables
I have experience using a variety of testing tools such as Selenium, Jira, and TestRail.
Selenium
Jira
TestRail
Over 5 years of experience leading QA teams, faced challenges in communication, resource allocation, and stakeholder management.
Managed a team of 10 QA engineers, ensuring timely delivery of high-quality testing.
Challenges included resolving conflicts within the team, prioritizing tasks based on project deadlines, and effectively communicating with stakeholders.
Implemented agile methodologies to improve team efficiency...
I appeared for an interview in Jan 2025.
I applied via Approached by Company and was interviewed in Nov 2024. There were 2 interview rounds.
Coding test is related to my tech skills only.
I am a dedicated and experienced Onboarding Lead with a passion for helping new employees integrate seamlessly into the company.
Over 5 years of experience in onboarding new hires
Strong communication and organizational skills
Proven track record of developing effective onboarding programs
Ability to collaborate with various departments to ensure a smooth onboarding process
I have over 5 years of experience in onboarding new employees, creating training programs, and ensuring smooth transitions.
Developed onboarding processes and materials for new hires
Led training sessions for new employees on company policies and procedures
Worked closely with HR and hiring managers to coordinate onboarding schedules
Implemented feedback mechanisms to continuously improve the onboarding experience
Seeking new challenges and growth opportunities in a different role.
Looking for a new challenge to expand my skill set
Interested in taking on more responsibility
Seeking growth opportunities in a different role
I appeared for an interview in Jun 2025, where I was asked the following questions.
A framework is a structured platform that provides foundational support for developing software applications.
Frameworks provide reusable code and components, reducing development time.
Examples include web frameworks like Django for Python and Ruby on Rails for Ruby.
They often enforce design patterns, promoting best practices in software development.
Frameworks can be specific to certain domains, like TensorFlow for mach...
Hooks in TestNG allow developers to execute code at specific points in the test lifecycle.
Hooks are methods annotated with @Before, @After, @BeforeClass, @AfterClass, etc.
They help in setting up preconditions or cleaning up after tests.
Example: @BeforeMethod can be used to initialize WebDriver before each test method.
Example: @AfterClass can be used to close database connections after all tests in a class.
Agile methodology is an iterative approach to software development that emphasizes flexibility, collaboration, and customer feedback.
Focuses on delivering small, incremental updates to software, allowing for quick adjustments based on user feedback.
Utilizes cross-functional teams that collaborate closely, often through daily stand-up meetings to discuss progress and challenges.
Emphasizes customer involvement throughout...
Handling collections involves managing groups of data efficiently using appropriate data structures and algorithms.
Choose the right data structure: Use arrays for fixed-size collections, lists for dynamic collections, and sets for unique items.
Utilize built-in methods: Leverage methods like map, filter, and reduce for functional programming approaches in collections.
Consider performance: Analyze time and space complexi...
Using try-catch blocks effectively helps manage exceptions and maintain application stability.
Use try-catch to handle exceptions gracefully and avoid application crashes.
Always catch specific exceptions before general ones to avoid masking errors.
Log exceptions in the catch block for debugging purposes. Example: `console.error(e);`
Consider using finally block for cleanup actions, like closing resources.
Avoid using empt...
I appeared for an interview in Nov 2024.
Questions about java concurrency framework, java 8 and 11 features, Code chef coding problem
I appeared for an interview in Jun 2025, where I was asked the following questions.
I have extensive experience with the Spring Framework, which is widely used for building enterprise-level Java applications.
Spring Framework provides a comprehensive programming and configuration model for modern Java-based enterprise applications.
It supports dependency injection, which promotes loose coupling and easier testing.
I have utilized Spring Boot for rapid application development, allowing me to create stand-...
Maven goals help manage project builds; parallel test execution improves efficiency in testing.
Maven goals include 'clean', 'compile', 'test', 'package', and 'install'.
To execute tests in parallel, use the Surefire plugin with the configuration: <parallel>methods</parallel>.
Example command: mvn test -Dtest=MyTest#testMethod -T 1C (1 thread per core).
You can also specify parallel execution in the pom.xml: &l...
Git revert is a command that creates a new commit to undo changes made by a previous commit.
Reverts the changes made by a specific commit without altering the commit history.
Syntax: `git revert <commit_hash>`.
Creates a new commit that negates the changes of the specified commit.
Useful for undoing changes in a collaborative environment while preserving history.
Example: If commit A introduced a bug, running `git re...
Sets, Maps, and Lists are fundamental data structures in programming, each serving unique purposes for data organization.
Set: A collection of unique elements. Example: Set<Integer> numbers = new HashSet<>(Arrays.asList(1, 2, 3));
Map: A collection of key-value pairs. Example: Map<String, Integer> ageMap = new HashMap<>(); ageMap.put('Alice', 30);
List: An ordered collection that allows duplicates....
Databricks is a unified analytics platform for big data and machine learning, while Azure Data Factory is a cloud-based data integration service.
Databricks is an integrated workspace for data engineering, data science, and machine learning tasks.
Azure Data Factory is a cloud-based data integration service that allows you to create, schedule, and manage data pipelines.
Databricks provides collaborative notebooks for data...
Some of the top questions asked at the Iris Software interview -
The duration of Iris Software interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 189 interview experiences
Difficulty level
Duration
based on 1.7k reviews
Rating in categories
Senior Software Engineer
671
salaries
| ₹17.7 L/yr - ₹32 L/yr |
Technical Lead
589
salaries
| ₹22.5 L/yr - ₹37 L/yr |
Senior Engineer
464
salaries
| ₹17.3 L/yr - ₹29.2 L/yr |
Senior Technical Consultant
403
salaries
| ₹17.3 L/yr - ₹30 L/yr |
Senior Technology Engineer
346
salaries
| ₹18 L/yr - ₹33 L/yr |
Xoriant
Photon Interactive
CitiusTech
HTC Global Services