i
Altimetrik
Filter interviews by
A promise is an object representing the eventual completion or failure of an asynchronous operation.
Promises have three states: pending, fulfilled, and rejected.
Example: A promise can be used to handle API calls, where it resolves with data or rejects with an error.
Promises can be chained using .then() for handling multiple asynchronous operations sequentially.
Example: Fetching user data followed by fetching user ...
An event loop is a programming construct that waits for and dispatches events or messages in a program, enabling asynchronous execution.
The event loop continuously checks for events and executes associated callbacks.
It allows non-blocking I/O operations, improving performance in applications like web servers.
In JavaScript, the event loop handles asynchronous operations like AJAX calls and timers.
Example: In Node.j...
The CIA triad represents the core principles of information security: Confidentiality, Integrity, and Availability.
Confidentiality: Ensures that sensitive information is accessed only by authorized individuals. Example: Encryption of personal data.
Integrity: Guarantees that data is accurate and unaltered. Example: Using checksums to verify file integrity.
Availability: Ensures that information and resources are acc...
HTTPS typically uses port 443 for secure communication over the internet.
HTTPS stands for HyperText Transfer Protocol Secure.
Port 443 is the default port for HTTPS traffic.
It encrypts data between the client and server using SSL/TLS.
Example: A website using HTTPS will have a URL starting with 'https://'.
Port 80 is used for HTTP, which is unencrypted.
Java 17 introduced several features like sealed classes, pattern matching, and enhanced switch statements that improve code efficiency.
Sealed Classes: Allow control over which classes can extend them. Example: `sealed class Shape permits Circle, Square {}`.
Pattern Matching for instanceof: Simplifies type checks and casting. Example: `if (obj instanceof String s) { ... }`.
Enhanced Switch Statements: Supports multip...
Securing microservices involves implementing best practices like authentication, encryption, and network security to protect data and services.
Implement strong authentication mechanisms (e.g., OAuth2, JWT) to ensure only authorized users can access services.
Use HTTPS for all communications to encrypt data in transit and prevent eavesdropping.
Employ API gateways to manage traffic, enforce security policies, and pro...
A negative product quantity indicates a logical error, typically requiring a 400 Bad Request response.
HTTP 400 Bad Request: Indicates the server cannot process the request due to client error.
Example: If a user tries to purchase a product with a negative quantity, the server should respond with 400.
This status code informs the client that their request is invalid and needs correction.
Designing an API that processes XML requests and returns JSON responses involves several key steps and considerations.
Define API endpoints and methods (e.g., GET, POST).
Implement XML parsing to handle incoming requests.
Convert parsed XML data into a suitable internal data structure.
Process the request and generate the appropriate response.
Convert the response data into JSON format.
Set appropriate HTTP headers for ...
A system for searching products and placing orders efficiently with user-friendly interfaces and robust backend architecture.
User Interface: Design a clean UI for product search with filters (e.g., category, price range).
Search Functionality: Implement a search algorithm (e.g., Elasticsearch) for fast and relevant results.
Product Details: Each product should have a detailed page with images, descriptions, and revi...
This Java program uses Streams to identify the most sold products in each category from a list of sales data.
Data Structure: Use a List of Product objects, each containing a category and sales count.
Grouping: Utilize Collectors.groupingBy() to group products by category.
Finding Max: Use Collectors.reducing() or Collectors.maxBy() to find the most sold product in each category.
Example: Given products like {"Electro...
I applied via Naukri.com and was interviewed in Jun 2022. There was 1 interview round.
MVC URL routing allows for custom URL definitions in ASP.NET
MVC URL routing maps URLs to controller actions
Normal URL definition uses query strings to pass parameters
MVC URL routing is more SEO-friendly
MVC URL routing can be configured in RouteConfig.cs file
Example: /products/category/electronics maps to ProductsController's Category action with 'electronics' parameter
MVC separates concerns, promotes code reusability, and enhances testability.
MVC separates the application into Model, View, and Controller components.
Model represents the data and business logic.
View represents the user interface.
Controller handles user input and updates the model and view accordingly.
MVC promotes code reusability by separating concerns.
MVC enhances testability by allowing for easier unit testing of in...
AoT (Ahead of Time) is a compilation technique used in Microsoft Azure to improve application performance.
AoT compiles code before it is executed, resulting in faster startup times and reduced memory usage.
It is commonly used in Azure Functions and Azure Web Apps.
AoT can also improve security by detecting potential vulnerabilities during compilation.
It is different from Just-in-Time (JIT) compilation, which compiles co...
ASP.NET page life cycle and events in it and how page will be rendered.
Page life cycle includes events like Init, Load, PreRender, and Unload.
During Init, controls are initialized and their properties are set.
During Load, controls are loaded with data and their events are fired.
During PreRender, the page is prepared for rendering.
During Unload, resources are released.
Page is rendered using HTML, CSS, and JavaScript.
Ren...
Postback events are server-side events triggered by user actions on a web page.
Postback events occur when a user interacts with a web page and the page sends a request back to the server for processing.
Examples of postback events include clicking a button, selecting an item from a dropdown list, or submitting a form.
Postback events can be used to update the page content without requiring a full page refresh.
ASP.NET is ...
Authentication is the process of verifying the identity of a user or system.
There are three types of authentication: something you know (passwords, PINs), something you have (smart cards, tokens), and something you are (biometrics).
Two-factor authentication combines two of these types for added security.
Authentication protocols include OAuth, OpenID Connect, and SAML.
Authentication can also be classified as single-fact...
Late binding or dynamic binding is a technique in which the method call is resolved at runtime rather than compile time.
In late binding, the type of the object is determined at runtime.
It allows for more flexibility in code as it can handle different types of objects.
Dynamic keyword is used for late binding in C#.
Example: using reflection to invoke a method on an object whose type is not known until runtime.
ASP.Net cache is a feature that stores frequently accessed data in memory to improve application performance.
ASP.Net cache is available in two types: in-memory cache and distributed cache.
In-memory cache stores data in the memory of the web server.
Distributed cache stores data in a separate cache server that can be accessed by multiple web servers.
ASP.Net cache can be used to store data such as database query results, ...
State management in ASP.Net refers to the process of storing and retrieving data between HTTP requests.
ASP.Net provides various techniques for state management such as ViewState, Session, Application, and Cache.
ViewState is used to store page-specific data, Session is used to store user-specific data, Application is used to store application-level data, and Cache is used to store frequently accessed data.
State manageme...
Handled conflicts in code merging and resource allocation.
Used version control systems like Git to manage code merging conflicts.
Communicated with team members to resolve resource allocation conflicts.
Prioritized tasks and resources based on project requirements.
Implemented agile methodologies to minimize conflicts and improve collaboration.
Documented conflict resolution processes for future reference.
I appeared for an interview in Feb 2025.
Subjects are multicast observables that can emit values, while observers are consumers that react to those emitted values.
A Subject can emit values to multiple subscribers, while an Observer receives values from a Subject.
Example of Subject: const subject = new Subject(); subject.next('Hello');
Example of Observer: const observer = { next: (value) => console.log(value); }; subject.subscribe(observer);
Subjects can act...
Components are self-contained UI elements, while directives are used to extend HTML behavior.
Components are a complete UI element with a template, styles, and logic (e.g., <app-header>).
Directives are used to manipulate the DOM or enhance existing elements (e.g., ngIf, ngFor).
Components can have their own view and encapsulated styles, while directives do not have their own view.
Components are typically used for b...
Angular guards are interfaces that control access to routes in an Angular application.
Types of guards: CanActivate, CanActivateChild, CanDeactivate, Resolve, and CanLoad.
CanActivate: Determines if a route can be activated. Example: Checking user authentication.
CanDeactivate: Checks if a user can leave a route. Example: Unsaved changes warning.
Resolve: Pre-fetches data before activating a route. Example: Fetching user d...
Template-driven forms in Angular use HTML templates to manage form inputs and validation, simplifying form handling.
Built using Angular's directives like ngModel for two-way data binding.
Forms are defined in the template, making them easy to read and maintain.
Validation is handled using Angular's built-in validators, such as required or minlength.
Example: <input [(ngModel)]='user.name' required /> binds the input...
ChangeDetectionStrategy in Angular determines how the framework checks for changes in component data.
Angular provides two strategies: Default and OnPush.
Default strategy checks all components in the component tree for changes.
OnPush strategy only checks the component when its input properties change or an event occurs.
Using OnPush can improve performance by reducing the number of checks.
Example: @Component({ changeDete...
Asynchronous behavior in JavaScript allows non-blocking operations, enhancing performance and user experience.
1. Callbacks: Functions passed as arguments to handle asynchronous results. Example: setTimeout(() => console.log('Done!'), 1000);
2. Promises: Objects representing eventual completion (or failure) of an asynchronous operation. Example: const promise = new Promise((resolve, reject) => { /* ... */ });
3. Asy...
var, let, and const are used for variable declaration in JavaScript, differing in scope, hoisting, and mutability.
var is function-scoped or globally scoped, while let and const are block-scoped.
let allows variable reassignment, whereas const does not allow reassignment after initial assignment.
var is hoisted, meaning it can be used before its declaration, while let and const are not hoisted in the same way.
Example: var...
HTML5 introduced new semantic elements to enhance the structure and meaning of web content.
header: Represents introductory content or navigational links. Example: <header><h1>Site Title</h1></header>
footer: Defines footer for a section or page. Example: <footer><p>© 2023 Company Name</p></footer>
article: Represents a self-contained composition. Example: <article><...
The doctype declaration informs the browser about the HTML version being used, ensuring proper rendering of the document.
Defines the document type and version of HTML (e.g., <!DOCTYPE html> for HTML5).
Helps browsers render the page correctly by switching to standards mode.
Prevents browsers from entering quirks mode, which can lead to inconsistent rendering.
Affects how CSS and JavaScript are interpreted by the bro...
Flexbox is for one-dimensional layouts, while Grid is for two-dimensional layouts in CSS.
Flexbox is designed for layout in a single direction (row or column). Example: Aligning items in a navbar.
Grid allows for layout in both rows and columns simultaneously. Example: Creating a complex web page layout.
Flexbox is great for distributing space within a container. Example: Equal spacing between buttons.
Grid is better for c...
I appeared for an interview in Apr 2025, where I was asked the following questions.
I have successfully identified and resolved various performance issues in my previous projects, enhancing system efficiency.
Optimized database queries, reducing response time by 40% in a web application.
Implemented caching strategies that improved load times for frequently accessed data.
Refactored code to eliminate bottlenecks, resulting in a smoother user experience.
Conducted performance testing and monitoring, leadin...
Securing microservices involves implementing best practices like authentication, encryption, and network security to protect data and services.
Implement strong authentication mechanisms (e.g., OAuth2, JWT) to ensure only authorized users can access services.
Use HTTPS for all communications to encrypt data in transit and prevent eavesdropping.
Employ API gateways to manage traffic, enforce security policies, and provide ...
A system for searching products and placing orders efficiently with user-friendly interfaces and robust backend architecture.
User Interface: Design a clean UI for product search with filters (e.g., category, price range).
Search Functionality: Implement a search algorithm (e.g., Elasticsearch) for fast and relevant results.
Product Details: Each product should have a detailed page with images, descriptions, and reviews.
S...
A negative product quantity indicates a logical error, typically requiring a 400 Bad Request response.
HTTP 400 Bad Request: Indicates the server cannot process the request due to client error.
Example: If a user tries to purchase a product with a negative quantity, the server should respond with 400.
This status code informs the client that their request is invalid and needs correction.
Designing an API that processes XML requests and returns JSON responses involves several key steps and considerations.
Define API endpoints and methods (e.g., GET, POST).
Implement XML parsing to handle incoming requests.
Convert parsed XML data into a suitable internal data structure.
Process the request and generate the appropriate response.
Convert the response data into JSON format.
Set appropriate HTTP headers for conte...
Java 17 introduced several features like sealed classes, pattern matching, and enhanced switch statements that improve code efficiency.
Sealed Classes: Allow control over which classes can extend them. Example: `sealed class Shape permits Circle, Square {}`.
Pattern Matching for instanceof: Simplifies type checks and casting. Example: `if (obj instanceof String s) { ... }`.
Enhanced Switch Statements: Supports multiple ca...
I applied via Naukri.com and was interviewed in Nov 2024. There was 1 interview round.
Types of jobs in Kotlin coroutine include launch, async, withContext, and runBlocking.
launch: starts a new coroutine without blocking the current thread
async: starts a new coroutine and returns a Deferred object with a result
withContext: switches the coroutine context within a coroutine
runBlocking: blocks the current thread until the coroutine inside it is completed
Flow is a cold asynchronous data stream, Channel is a hot asynchronous data stream. StateFlow is a hot asynchronous data stream with a state, SharedFlow is a hot asynchronous data stream without a state.
Flow is a cold asynchronous data stream that emits values one by one.
Channel is a hot asynchronous data stream that can have multiple subscribers.
StateFlow is a hot asynchronous data stream that retains the most recent ...
Flow lifecycle aware means using Kotlin Flow with lifecycle awareness in Android development.
Flow lifecycle aware helps manage data streams in Android apps
It ensures that data emissions are only observed when the lifecycle is in the appropriate state
Example: Using Flow with LiveData to update UI components based on lifecycle events
Inline functions are functions that are expanded in place at the call site, while high-order functions are functions that can take other functions as parameters or return them.
Inline functions are expanded in place at the call site to improve performance.
High-order functions can take other functions as parameters or return them.
Example of high-order function: map() function in Kotlin.
Data structure was more and it was difficult round
I applied via Naukri.com and was interviewed in Dec 2024. There were 4 interview rounds.
NA kjwnoi wniowe nfiow flmi
NA fklwmoiwef,m ionfwno njnwfeio onfwp
I applied via LinkedIn and was interviewed in Oct 2024. There were 3 interview rounds.
HackersRank 2 questions
Context API is a feature in React that allows sharing data between components without having to pass props through every level of the component tree.
Context API provides a way to pass data through the component tree without having to pass props down manually at every level.
It is useful for sharing global data such as themes, user authentication, or language preferences.
Context API consists of three main parts: Provider...
Hooks in React JS are functions that let you use state and other React features without writing a class.
Hooks were introduced in React 16.8 to allow functional components to have state and lifecycle methods.
useState() is a hook that allows you to add state to functional components.
useEffect() is a hook that allows you to perform side effects in functional components.
Custom hooks are reusable functions that can contain ...
I applied via Recruitment Consulltant and was interviewed in Sep 2024. There were 2 interview rounds.
Accumulators are shared variables that are updated by worker nodes and can be used for aggregating information across tasks.
Accumulators are used for implementing counters and sums in Spark.
They are only updated by worker nodes and are read-only by the driver program.
Accumulators are useful for debugging and monitoring purposes.
Example: counting the number of errors encountered during processing.
Spark architecture is a distributed computing framework that consists of a driver program, cluster manager, and worker nodes.
Spark architecture includes a driver program that manages the execution of the Spark application.
It also includes a cluster manager that allocates resources and schedules tasks on worker nodes.
Worker nodes are responsible for executing the tasks and storing data in memory or disk.
Spark architectu...
Query to find duplicate data using SQL
Use GROUP BY and HAVING clause to identify duplicate records
Select columns to check for duplicates
Use COUNT() function to count occurrences of each record
Pub/sub is a messaging pattern where senders (publishers) of messages do not program the messages to be sent directly to specific receivers (subscribers).
Pub/sub stands for publish/subscribe.
Publishers send messages to a topic, and subscribers receive messages from that topic.
It allows for decoupling of components in a system, enabling scalability and flexibility.
Examples include Apache Kafka, Google Cloud Pub/Sub, and...
I have used services like BigQuery, Dataflow, Pub/Sub, and Cloud Storage in GCP.
BigQuery for data warehousing and analytics
Dataflow for real-time data processing
Pub/Sub for messaging and event ingestion
Cloud Storage for storing data and files
I appeared for an interview in May 2025, where I was asked the following questions.
HTTPS typically uses port 443 for secure communication over the internet.
HTTPS stands for HyperText Transfer Protocol Secure.
Port 443 is the default port for HTTPS traffic.
It encrypts data between the client and server using SSL/TLS.
Example: A website using HTTPS will have a URL starting with 'https://'.
Port 80 is used for HTTP, which is unencrypted.
The CIA triad represents the core principles of information security: Confidentiality, Integrity, and Availability.
Confidentiality: Ensures that sensitive information is accessed only by authorized individuals. Example: Encryption of personal data.
Integrity: Guarantees that data is accurate and unaltered. Example: Using checksums to verify file integrity.
Availability: Ensures that information and resources are accessib...
I appeared for an interview in Jan 2025.
Top trending discussions
Some of the top questions asked at the Altimetrik interview -
The duration of Altimetrik interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 203 interview experiences
Difficulty level
Duration
based on 1.2k reviews
Rating in categories
Senior Software Engineer
1.3k
salaries
| ₹9.5 L/yr - ₹39 L/yr |
Staff Engineer
1.1k
salaries
| ₹20.7 L/yr - ₹36.8 L/yr |
Senior Engineer
802
salaries
| ₹9 L/yr - ₹31 L/yr |
Software Engineer
387
salaries
| ₹4.9 L/yr - ₹19.1 L/yr |
Senior Staff Engineer
262
salaries
| ₹15 L/yr - ₹46 L/yr |
Accenture
Xoriant
CitiusTech
HTC Global Services