Senior Developer

100+ Senior Developer Interview Questions and Answers

Updated 16 Dec 2024

Popular Companies

search-icon

Q1. What is your current CTC and what is your expected CTC?

Ans.

Current CTC is confidential. Expectation is based on market standards and my experience.

  • Current CTC is confidential information and not disclosed in interviews.

  • Expected CTC is based on market standards, industry trends, and my experience.

  • I am looking for a competitive salary package that aligns with my skills and expertise.

Q2. 4. How to delete duplicate rows based on key in a table?

Ans.

To delete duplicate rows based on key in a table, use the DELETE statement with a subquery.

  • Identify the key column(s) that define the uniqueness of a row

  • Use the GROUP BY clause to group the rows by the key column(s)

  • Use the HAVING clause to filter out the groups that have more than one row

  • Use the subquery to select the duplicate rows to be deleted

  • Use the DELETE statement with the subquery to delete the duplicate rows

Senior Developer Interview Questions and Answers for Freshers

illustration image

Q3. What were the data retrieval steps in Informatica, while doing the ETL ?

Ans.

Data retrieval steps in Informatica ETL process

  • Identify the source data to be extracted

  • Create source and target connections in Informatica

  • Design mappings to extract, transform, and load data

  • Use transformations like Filter, Joiner, Lookup, etc.

  • Run the ETL job to retrieve data from source to target

Q4. Write a Serverless function to expose a CRUD operation API using dynamo DB?

Ans.

Create a Serverless function to expose CRUD operations using DynamoDB

  • Use AWS Lambda to create the Serverless function

  • Use API Gateway to expose the API endpoints

  • Use AWS SDK to interact with DynamoDB for CRUD operations

  • Implement GET, POST, PUT, DELETE methods for CRUD operations

Are these interview questions helpful?

Q5. 3.How to implement SCDs and different between them?

Ans.

SCDs are used to track changes in data over time. There are three types: Type 1, Type 2, and Type 3.

  • Type 1 SCDs overwrite old data with new data.

  • Type 2 SCDs add a new row for each change, with a start and end date.

  • Type 3 SCDs add columns to the existing row to track changes.

  • SCDs are commonly used in data warehousing and business intelligence.

  • The choice of SCD type depends on the specific use case and data requirements.

Q6. 5. What are the differences between fact and dimension?

Ans.

Fact and dimension are two types of data in a data warehouse.

  • Fact is a measurable event that can be analyzed, while dimension provides context to the fact.

  • Fact is quantitative, while dimension is qualitative.

  • Fact is stored in a fact table, while dimension is stored in a dimension table.

  • Examples of fact include sales, revenue, and profit, while examples of dimension include time, location, and product.

  • Fact and dimension are used in data modeling to create a star schema or snow...read more

Share interview questions and help millions of jobseekers 🌟

man-with-laptop

Q7. design a system where 2 transaction should happen one after the other. Both should pass and if one fails none should be persist or eventually all txn should roll back

Ans.

Design a system for sequential transactions with rollback on failure

  • Use a transaction manager to coordinate the two transactions

  • Implement a try-catch mechanism to handle failures and trigger rollback if needed

  • Ensure that both transactions are part of the same unit of work

Q8. 1.Candidate and Super Key in SQL Server. 2.Difference in join and sub query. 3. How to achieve abstraction , Write the example. 4. can we write Static Function and constructor in Abstract class.

Ans.

Answers to SQL Server and OOP related questions for Senior Developer position.

  • Candidate key is a unique identifier for a row in a table, while super key is a set of columns that can uniquely identify a row.

  • Join combines data from two or more tables based on a related column, while subquery is a query within another query.

  • Abstraction can be achieved by creating abstract classes or interfaces that define common properties and methods for related classes.

  • Yes, we can write static...read more

Senior Developer Jobs

Senior Developer - Full Stack (Dotnet, Angular/React) 8-12 years
3M India Ltd
4.3
Bangalore / Bengaluru
Senior Developer - Java, Node.js, or JavaScript 7-9 years
SAP India Pvt.Ltd
4.2
Bangalore / Bengaluru
Db2 For z/OS Senior Developer 10-15 years
IBM India Pvt. Limited
4.1
Bangalore / Bengaluru

Q9. 2.How to differentiate outer and inner joins with sample data?

Ans.

Outer join returns all records from one table and matching records from another, while inner join returns only matching records.

  • Outer join uses the (+) symbol in Oracle and LEFT/RIGHT OUTER JOIN in SQL Server

  • Inner join uses INNER JOIN keyword in SQL

  • Sample data: Table A has 5 records, Table B has 3 records, Outer join returns 8 records while Inner join returns 3 records

Q10. How do you bind gateway to serverless function?

Ans.

To bind a gateway to a serverless function, you can use API Gateway services provided by cloud providers like AWS, Azure, or Google Cloud.

  • Create a new API Gateway in your cloud provider's console.

  • Define the API endpoints and methods that will trigger your serverless function.

  • Connect the API Gateway to your serverless function by specifying the function's ARN or endpoint.

  • Set up any necessary permissions or security configurations for the API Gateway to invoke the function.

  • Test...read more

Q11. What libraries do you used for Unit Testing?

Ans.

I primarily use JUnit and Mockito for unit testing in Java projects.

  • JUnit is a popular Java testing framework for writing and running unit tests

  • Mockito is a mocking framework that allows for creating mock objects in unit tests

Q12. Explain oops concept in java? Multi threading life cycle? Collection key interfaces and their implemented class? internal working of hashmap? toString() and hashcode() method contract? comparable and compator? ...

read more
Ans.

Object-oriented programming concepts in Java, multi-threading, key interfaces and implemented classes in collections, internal working of HashMap, contract of toString() and hashCode() methods, Comparable and Comparator, Spring bean and IOC, Spring Boot annotations, microservices and design patterns.

  • OOPs concepts in Java include encapsulation, inheritance, polymorphism, and abstraction.

  • Multi-threading life cycle involves states like new, runnable, running, blocked, and termin...read more

Q13. Explain the clean architecture principles used in your project?

Ans.

Clean architecture principles focus on separation of concerns, independence of frameworks, testability, and maintainability.

  • Separation of concerns: Dividing the application into layers (e.g. presentation, domain, data) to ensure each layer has a specific responsibility.

  • Independence of frameworks: Decoupling the application from external frameworks to make it easier to switch or update frameworks in the future.

  • Testability: Writing code in a way that makes it easy to write unit...read more

Q14. How to find difference between two dates?

Ans.

To find the difference between two dates, subtract the earlier date from the later date.

  • Subtract the earlier date from the later date

  • Use a date library or built-in functions to perform the subtraction

  • Consider time zones and daylight saving time if applicable

Q15. What are the coding and software development processes you follow?

Ans.

I follow agile methodology and use version control systems like Git. I also prioritize testing and documentation.

  • I follow agile methodology for software development

  • I use version control systems like Git to manage code changes

  • I prioritize testing and documentation throughout the development process

  • I regularly review and refactor code to ensure maintainability

  • I collaborate with team members and stakeholders to ensure project success

Q16. What’s Mulesoft ? What’s Munit ? What’s Runtime Manager ? What’s Scaling ? What’s RAML ?

Ans.

Mulesoft is an integration platform that connects applications, data, and devices.

  • Munit is a testing framework for Mulesoft applications.

  • Runtime Manager is a cloud-based platform for managing Mulesoft applications.

  • Scaling refers to the ability of Mulesoft to handle increased traffic and workload.

  • RAML is a language used to define APIs in a human-readable format.

Q17. 7.What do you understand by degenerate dimension?

Ans.

Degenerate dimension refers to a dimension with only one value.

  • A degenerate dimension is a dimension table with only one column and one row.

  • It is used to join fact tables with different granularity levels.

  • For example, a time dimension with only one value can be used to join a sales fact table with daily granularity and a returns fact table with hourly granularity.

Q18. What were the schedulers you 've used to schedule your ETL jobs? What are the advantages of each of them?

Ans.

I have used Airflow and Oozie for scheduling ETL jobs.

  • Airflow provides a user-friendly UI and supports multiple languages.

  • Oozie is good for Hadoop-based ETL jobs and has a web console for monitoring.

  • Airflow has a larger community and more plugins available.

  • Oozie has better integration with Hadoop ecosystem tools.

  • Both are open-source and can handle complex workflows.

Q19. What different connector have you worked on ? Explain then

Ans.

I have worked on various connectors including REST, SOAP, JDBC, and JMS.

  • I have experience working with REST APIs and building RESTful web services.

  • I have worked with SOAP APIs and have experience in creating SOAP-based web services.

  • I have worked with JDBC connectors and have experience in connecting to databases using JDBC drivers.

  • I have experience working with JMS and have implemented messaging systems using JMS.

  • I have also worked with other connectors such as FTP, SFTP, and...read more

Q20. how did the project configuration can be done in .net without using the config files

Ans.

Project configuration in .NET without config files

  • Use code-based configuration instead of XML configuration

  • Create a custom configuration provider

  • Use environment variables or command line arguments

  • Use a database or other external storage for configuration data

Q21. How do you optimize the performance of a website that renders 1000 records in a grid?

Ans.

Optimizing website performance with 1000 records in a grid

  • Use server-side pagination to limit the number of records fetched at once

  • Implement lazy loading to load data only when needed

  • Optimize database queries to fetch only necessary data

  • Minimize network requests by combining multiple API calls into one

  • Use caching mechanisms to store frequently accessed data

Q22. What are memory leaks and how you deal with them in JS?

Ans.

Memory leaks occur when unused memory is not released, leading to performance issues. In JS, they can be caused by circular references or event listeners.

  • Memory leaks in JS can be caused by circular references, where objects reference each other but are no longer needed.

  • Event listeners can also cause memory leaks if not properly removed when no longer needed.

  • To deal with memory leaks in JS, it is important to properly manage memory by removing unused references and event list...read more

Q23. How to run java program using command line?

Ans.

To run a Java program using command line, use the 'java' command followed by the name of the class containing the main method.

  • Navigate to the directory containing the .class file

  • Type 'java' followed by the name of the class containing the main method

  • Include any necessary command line arguments after the class name

  • Press enter to run the program

  • Example: java MyProgram arg1 arg2

Q24. Given 2 Nodes 1->9 ->0 1->0 Add both of them so resulting node would be 2->0->0 190 +10 = 200 Java 8 questions

Ans.

Add two linked lists representing numbers and return the resulting linked list.

  • Traverse both linked lists and add the corresponding digits, keeping track of carry.

  • Create a new node for each digit and update the carry for the next iteration.

  • If one list is longer than the other, add the remaining digits to the result.

  • Handle the case where the carry is not zero after all digits have been added.

  • Time complexity: O(max(m,n)), where m and n are the lengths of the input lists.

Q25. Create canBalance in javascript for substring in arrays whose sum is equal

Ans.

Create a function in JavaScript to check if a substring in an array can be split into two parts with equal sum.

  • Iterate through the array and calculate the total sum of all elements.

  • Iterate through the array again and check if there is a point where the sum of elements on the left side is equal to the sum of elements on the right side.

  • Return true if such a point is found, otherwise return false.

Q26. How to reverse a string in Unix?

Ans.

To reverse a string in Unix, you can use the 'rev' command.

  • Use the 'rev' command followed by the string you want to reverse.

  • The 'rev' command reads the input from right to left and outputs it in reverse order.

  • The 'rev' command can be used with pipes to reverse the output of other commands.

Q27. What’s routing ? Explain exception handling

Ans.

Routing is the process of selecting a path for network traffic to travel.

  • Routing is used in networking to determine the best path for data to travel between devices.

  • It involves analyzing the network topology and selecting the most efficient path.

  • Routing protocols like OSPF and BGP are used to automate the process.

  • Exception handling is the process of dealing with errors and exceptions in code.

  • It involves catching and handling errors to prevent the program from crashing.

  • Try-cat...read more

Q28. What is the difference between managed and unmanaged code?

Ans.

Managed code is executed by the .NET runtime, while unmanaged code is executed by the operating system.

  • Managed code is compiled into an intermediate language (IL) that is executed by the .NET runtime.

  • Unmanaged code is compiled into machine code that is executed directly by the operating system.

  • Managed code provides automatic memory management, while unmanaged code requires manual memory management.

  • Examples of managed code include C# and VB.NET, while examples of unmanaged cod...read more

Q29. what are the ways you can add authentication to the .net app service

Ans.

There are multiple ways to add authentication to .NET app service.

  • Using Azure Active Directory

  • Using IdentityServer

  • Using OAuth2

  • Using OpenID Connect

  • Using JWT Tokens

Q30. In kafka how multiple consumer can access same messages?

Ans.

Multiple consumers can access the same messages in Kafka by using consumer groups.

  • Consumers can be grouped together to share the workload of processing messages.

  • Each consumer in a group will receive a subset of the messages from the same topic.

  • Consumers in the same group will coordinate to ensure that each message is processed only once.

  • Consumer offsets are used to track the progress of each consumer in the group.

Q31. What actually needs to do programming?

Ans.

Programming is the process of writing instructions for a computer to perform specific tasks.

  • Programming involves writing code using programming languages.

  • It requires problem-solving skills to break down complex problems into smaller, manageable tasks.

  • Programmers need to understand algorithms and data structures to optimize code efficiency.

  • Debugging and testing are essential to identify and fix errors in the code.

  • Continuous learning and staying updated with new technologies ar...read more

Q32. Code a controller class , service class, entity and repository

Ans.

Code a controller, service, entity, and repository classes for a software application.

  • Create a controller class to handle incoming requests and interact with the service layer.

  • Develop a service class to implement business logic and interact with the repository.

  • Define an entity class to represent data in the application.

  • Implement a repository class to handle database operations for the entity.

Q33. 1. What is ETL and DWH?

Ans.

ETL stands for Extract, Transform, Load and DWH stands for Data Warehouse.

  • ETL is a process of extracting data from various sources, transforming it into a format suitable for analysis, and loading it into a target system.

  • DWH is a system used for storing and managing data from various sources for business intelligence purposes.

  • ETL is a crucial step in populating a DWH with data.

  • ETL involves data extraction, data transformation, and data loading.

  • DWH is designed to support decis...read more

Q34. What are the Projects? What is the experience in Linux QT Docker?

Ans.

Projects include web applications, mobile apps, and desktop software.

  • Developed a web application for a retail company using AngularJS and Node.js

  • Created a mobile app for a fitness startup using React Native

  • Built a desktop software for a financial institution using Java Swing

  • Experience in Linux QT Docker includes developing a containerized application for a healthcare company

Q35. How does Microservice work How do you align OOO to JAO Used MongoDB? like that

Ans.

Microservices are a software architecture style where applications are composed of small, independent services that communicate over well-defined APIs.

  • Microservices break down a large application into smaller, loosely coupled services that can be developed, deployed, and scaled independently.

  • Each microservice is responsible for a specific business function and communicates with other services through APIs.

  • Object-Oriented Programming (OOO) focuses on modeling real-world entiti...read more

Q36. 8.Difference between OLTP and OLAP systems.

Ans.

OLTP is a transactional system for day-to-day operations, while OLAP is analytical system for decision-making.

  • OLTP deals with real-time data processing, while OLAP deals with historical data analysis.

  • OLTP is optimized for write operations, while OLAP is optimized for read operations.

  • OLTP is used for operational tasks like order processing, while OLAP is used for strategic tasks like sales forecasting.

  • OLTP databases are normalized, while OLAP databases are denormalized.

  • Example...read more

Q37. How to create NPM SDK?

Ans.

To create an NPM SDK, you need to structure your code as a package, publish it to NPM registry, and document its usage.

  • Structure your code as a package with a package.json file specifying dependencies, entry point, and scripts.

  • Publish your package to the NPM registry using 'npm publish' command after logging in with 'npm login'.

  • Document the usage of your SDK with README.md file, examples, and API documentation.

Q38. 6.Can you join different fact tables ?

Ans.

Yes, fact tables can be joined together in a data warehouse to combine related information.

  • Fact tables contain quantitative data and are typically joined using common dimensions.

  • Joining fact tables allows for more comprehensive analysis and reporting.

  • For example, joining a sales fact table with a customer fact table can provide insights on customer behavior and purchasing patterns.

Q39. Please describe end to end flow and solution of PO/ OM/any related module.

Ans.

End to end flow and solution of PO/OM module

  • PO/OM module is used for procurement and order management

  • The flow starts with creating a purchase requisition

  • The requisition is then approved and converted into a purchase order

  • The purchase order is sent to the vendor for fulfillment

  • Once the goods are received, they are inspected and the receipt is recorded

  • The invoice is matched with the purchase order and receipt

  • Payment is made to the vendor

  • The module also includes inventory manage...read more

Q40. What is Hash map? What app did you build How do u maintain app life cycle

Ans.

A hash map is a data structure that allows for efficient storage and retrieval of key-value pairs.

  • A hash map uses a hash function to convert keys into array indices.

  • It provides constant-time average case complexity for insertion, deletion, and retrieval operations.

  • Hash maps are commonly used in programming languages and databases for fast data access.

  • Example: HashMap map = new HashMap<>();

  • map.put("apple", 5);

  • int value = map.get("apple"); // returns 5

Q41. What is inheritance? Hae you lead any team? What is Sevice bus and real time explaination.

Ans.

Inheritance is a concept in object-oriented programming where a class inherits attributes and methods from another class.

  • Inheritance allows for code reusability and promotes a hierarchical structure in programming.

  • Subclasses can inherit properties and behaviors from a superclass.

  • Example: A 'Vehicle' class can be a superclass, with subclasses like 'Car' and 'Truck' inheriting attributes like 'color' and methods like 'drive'.

Q42. troubleshoot modules how do you decide and when

Ans.

I troubleshoot modules by identifying the problem, analyzing the code, and testing solutions.

  • Identify the problem by reproducing the issue and gathering information

  • Analyze the code to understand how it works and where the issue may be

  • Test solutions by implementing and verifying the fix

  • Document the troubleshooting process and solution for future reference

Q43. What is classloader? It's types

Ans.

Classloader is a part of JVM that loads classes into memory. It has three types: Bootstrap, Extension, and Application.

  • Classloader loads classes into memory when they are needed by the program

  • Bootstrap classloader loads core Java classes from the JDK's rt.jar file

  • Extension classloader loads classes from the JDK's lib/ext directory

  • Application classloader loads classes from the classpath of the application

  • Classloader follows delegation model to load classes

Q44. Diffrence between Normal and Arrow Fuction and its example

Ans.

Arrow functions are concise syntax for writing functions in JavaScript, compared to normal functions.

  • Arrow functions do not have their own 'this' keyword, they inherit it from the parent scope.

  • Arrow functions do not have 'arguments' object.

  • Arrow functions cannot be used as constructors.

  • Arrow functions are more concise and easier to read compared to normal functions.

Q45. String S1 = "nav"; String s2 = "nav"; Sysout(S1 =s2);

Ans.

The code compares two string variables and prints whether they are equal.

  • String variables in Java are compared using the '==' operator for reference comparison and the equals() method for value comparison.

  • In this case, since both S1 and s2 have the same value 'nav', the comparison will result in true.

  • Output: true

Q46. How to use gather stats?

Ans.

Gather stats is used to collect statistics about database objects in order to optimize query performance.

  • Gather stats is a command in database management systems like Oracle and PostgreSQL.

  • It collects information about the distribution of data in tables and indexes.

  • This information helps the query optimizer to generate efficient execution plans.

  • Gather stats can be used on individual tables, indexes, or the entire database.

  • It is typically run after significant data changes or ...read more

Q47. Tell some springboot annotations ? What is maven? What are Java 8 features ?

Ans.

Springboot annotations include @RestController, @Autowired, @RequestMapping. Maven is a build automation tool. Java 8 features include lambda expressions, streams, and functional interfaces.

  • @RestController - used to define RESTful web services

  • @Autowired - used for automatic dependency injection

  • @RequestMapping - maps HTTP requests to handler methods

  • Maven is a build automation tool that manages project dependencies and builds the project

  • Java 8 features include lambda expression...read more

Q48. Difference between clustered and non-clustered indexes?

Ans.

Clustered indexes physically order the data rows in the table while non-clustered indexes do not.

  • Clustered indexes determine the physical order of data rows in a table.

  • Non-clustered indexes store a separate structure that contains the index key values and pointers to the actual data rows.

  • Tables can only have one clustered index but multiple non-clustered indexes.

  • Clustered indexes are faster for retrieval of data but slower for inserts and updates compared to non-clustered ind...read more

Q49. What is CVS? How it is installed in IIB

Ans.

CVS stands for Concurrent Versions System, a version control system. It can be installed in IIB using the command line or GUI.

  • CVS is a version control system used to track changes in files and manage multiple versions of the same project.

  • To install CVS in IIB, you can use the command line by running 'sudo apt-get install cvs' or use a GUI tool like TortoiseCVS.

  • Once installed, you can configure CVS in IIB by setting up a repository, checking out projects, committing changes, a...read more

Q50. What is position property in css?

Ans.

Position property in CSS specifies the positioning method of an element.

  • It is used to set the position of an element relative to its parent or to the browser window.

  • It can take values like static, relative, absolute, fixed, sticky.

  • Static is the default value which means the element is positioned according to the normal flow of the document.

  • Relative positions the element relative to its normal position.

  • Absolute positions the element relative to its nearest positioned ancestor....read more

1
2
3
4
Next
Interview Tips & Stories
Ace your next interview with expert advice and inspiring stories

Interview experiences of popular companies

3.7
 • 10k Interviews
3.9
 • 7.8k Interviews
3.7
 • 7.4k Interviews
3.8
 • 5.4k Interviews
3.6
 • 3.7k Interviews
3.6
 • 3.6k Interviews
3.8
 • 2.6k Interviews
4.1
 • 2.3k Interviews
4.2
 • 297 Interviews
View all

Calculate your in-hand salary

Confused about how your in-hand salary is calculated? Enter your annual salary (CTC) and get your in-hand salary

Senior Developer Interview Questions
Share an Interview
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions
Get AmbitionBox app

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter