i
Cimpress
Filter interviews by
Design a restaurant system to manage reservations, orders, and customer interactions efficiently.
Define core entities: Restaurant, Menu, Customer, Order, Reservation.
Implement a database schema to store information about menus, orders, and customers.
Create APIs for managing reservations (e.g., POST /reservations) and orders (e.g., POST /orders).
Consider user roles: Admin (manage menu), Waitstaff (take orders), Cus...
A well-structured React folder organization enhances maintainability and scalability of the codebase.
Use a 'src' folder to contain all application code, e.g., 'src/components', 'src/pages'.
Group related components together, e.g., 'src/components/Button', 'src/components/Form'.
Create a 'hooks' folder for custom hooks, e.g., 'src/hooks/useFetch.js'.
Utilize a 'utils' folder for utility functions, e.g., 'src/utils/for...
Design a cart discount system to apply various discounts on products in a shopping cart.
Define a Cart class to hold products and their quantities.
Create a Discount class to represent different types of discounts (e.g., percentage, fixed amount).
Implement a method to calculate total price considering discounts.
Example: If a product costs $100 and a 10% discount is applied, the final price is $90.
Allow stacking of d...
Design a Robo restaurant where robots take orders and serve customers efficiently.
User Interface: A touchscreen menu for customers to place orders.
Order Management: A backend system to manage orders and track inventory.
Robot Navigation: Robots equipped with sensors for obstacle detection and navigation.
Communication: Robots communicate with the kitchen and customers via a central server.
Payment System: Integration...
The 'finalize' keyword is used in Java to perform cleanup operations before an object is garbage collected.
The 'finalize' method is called by the garbage collector before reclaiming an object's memory.
It can be used to release resources like closing files or sockets.
It is not recommended to rely on 'finalize' for resource cleanup as it is not guaranteed to be called.
To avoid method overriding, make the method final or private.
Declare the method as final to prevent it from being overridden in subclasses.
Declare the method as private to hide it from subclasses.
Use the @Override annotation to ensure that a method is actually overriding a superclass method.
Design a system for automated order placement, processing, and delivery in a restaurant.
User Interface: A mobile app or web portal for customers to place orders.
Order Management: A backend system to manage incoming orders and their statuses.
Payment Processing: Integration with payment gateways for secure transactions.
Kitchen Display System: A system for kitchen staff to view and manage orders.
Delivery Management: ...
Design a shopping cart system supporting multiple products and discount coupons.
User can add/remove multiple products to/from the cart.
Each product has attributes: ID, name, price, quantity.
Discount coupons can be applied at checkout, affecting total price.
Coupons may have conditions, e.g., minimum purchase amount or product categories.
Implement a total price calculation method considering discounts.
Example: A car...
The front end of a website or application is responsible for the user interface and user experience.
The front end is built using HTML, CSS, and JavaScript
It communicates with the back end to retrieve and display data
Real-time front ends often use technologies like WebSockets or AJAX to update content without refreshing the page
Responsive design is important for ensuring the front end works well on different device...
Design architecture for end user clicks data to warehouse and datalake to ML model
Create a pipeline to extract data from end user clicks
Store data in both warehouse and datalake for redundancy and scalability
Use ETL tools to transform and clean data for ML model
Train ML model on transformed data
Deploy ML model for predictions on new data
I appeared for an interview in Dec 2024.
This was a written exam conducted offline, lasting approximately 60 minutes. It included basic technical questions as well as scenario-based points of view for question and answer evaluation.
Illustrating an e-commerce website flowchart from user and backend sides
User side: Homepage -> Browse products -> Add to cart -> Checkout -> Payment -> Order confirmation
Backend side: Receive order -> Process payment -> Update inventory -> Send confirmation email
TCP is a connection-oriented protocol that ensures data delivery, while UDP is a connectionless protocol that does not guarantee delivery.
TCP is reliable and ensures data delivery by establishing a connection before sending data.
UDP is faster but less reliable as it does not establish a connection before sending data.
TCP is used for applications that require reliable data transmission, such as web browsing and email.
UD...
I am most attracted to the collaborative and innovative aspects of the company culture.
Collaborative team environment where everyone's input is valued
Emphasis on continuous learning and professional development
Encouragement of creativity and innovation in problem-solving
Supportive and inclusive workplace culture
I dislike the lack of opportunities for growth and learning in my current role.
Limited opportunities for career advancement
Lack of challenging projects to work on
Limited training and development programs
Inadequate support from management for skill development
Yes, I am willing to relocate to Mumbai for the Technical Support Engineer position.
I am open to new opportunities and experiences in different locations.
I have researched about Mumbai and I am excited about the prospect of living and working there.
I am prepared to make the necessary arrangements for relocation, including finding accommodation and settling in.
I believe that relocating to Mumbai will enhance my career g...
This consisted of three questions that needed to be solved on the Hacker Earth platform.
I appeared for an interview in Dec 2024.
I applied via Job Portal
3 Easy-medium dsa questions
Selection sort is a simple sorting algorithm that divides the input list into a sorted and an unsorted region.
Selection sort works by repeatedly finding the minimum element from the unsorted part and moving it to the sorted part.
It has a time complexity of O(n^2), making it inefficient on large lists compared to more advanced algorithms.
Example: For the array [64, 25, 12, 22, 11], the first pass finds 11, swaps it with...
Design a library management system for tracking books, users, and transactions.
Create database tables for books, users, and transactions
Implement functions for adding, updating, and deleting books and users
Include features for borrowing and returning books with due dates
Generate reports on book availability, overdue books, and user activity
I applied via Referral and was interviewed in Oct 2024. There was 1 interview round.
Node.js is a runtime environment that executes JavaScript code outside of a web browser.
Node.js uses the V8 JavaScript engine from Google Chrome to execute code.
It is built on the event-driven, non-blocking I/O model, making it lightweight and efficient.
Node.js uses a single-threaded event loop to handle multiple concurrent connections.
It has a built-in module system that allows developers to easily add functionality t...
Around 2 hours , the round is technical
LRU Cache is a data structure that stores the most recently used items, discarding the least recently used items when full.
Use a combination of a doubly linked list and a hashmap to implement LRU Cache.
Maintain a doubly linked list to keep track of the order of items based on their usage.
Use a hashmap to store the key-value pairs for quick access and update of items in the cache.
When a new item is accessed, move it to ...
An LRU Cache efficiently manages data by evicting the least recently used items when capacity is reached.
LRU stands for Least Recently Used, a cache eviction policy.
It maintains a fixed size and removes the least recently accessed item when full.
Commonly implemented using a combination of a hash map and a doubly linked list.
Example: If a cache size is 3 and accesses are A, B, C, A, D, the cache will contain A, D, C aft...
Asked me write Code on Parking System
I applied via Approached by Company and was interviewed in May 2024. There were 3 interview rounds.
Design a shopping cart system that supports various coupon types for discounts and promotions.
Define coupon types: percentage, fixed amount, buy-one-get-one (BOGO), and free shipping.
Implement a Coupon class with attributes like code, type, value, and expiration date.
Create a method to apply coupons to the cart, checking validity and calculating discounts.
Consider stacking rules: can multiple coupons be applied at once...
Design a restaurant system where robots serve customers, enhancing efficiency and customer experience.
User Interface: A mobile app for customers to place orders and customize meals.
Robot Design: Robots equipped with trays and navigation systems to deliver food.
Order Management: A backend system to manage orders, track inventory, and update menus.
Payment System: Integration with digital wallets and contactless payment m...
I applied via Naukri.com and was interviewed in Jul 2024. There was 1 interview round.
I applied via Approached by Company and was interviewed in Jul 2024. There were 2 interview rounds.
Journal entries of prepaid expenses, provisions
Prepaid expenses are expenses that have been paid in advance but have not yet been incurred.
Prepaid expenses are recorded as assets on the balance sheet until they are used up or expire.
Examples of prepaid expenses include prepaid rent, insurance premiums, and subscriptions.
Once the prepaid expense is incurred, it is then recorded as an expense on the income statement.
Accrued income/expenses refer to revenues or expenses that have been earned/incurred but not yet received/paid.
Accrued income is revenue that has been earned but not yet received, such as interest income.
Accrued expenses are costs that have been incurred but not yet paid, like salaries or utilities.
Accrued income/expenses are recorded in the financial statements to reflect the true financial position of a company.
They ...
I applied via LinkedIn and was interviewed in Sep 2024. There was 1 interview round.
Recreate logo with gradiant tool & pen tool
Top trending discussions
The duration of Cimpress interview process can vary, but typically it takes about less than 2 weeks to complete.
based on 66 interview experiences
Difficulty level
Duration
based on 380 reviews
Rating in categories
Senior Software Engineer
287
salaries
| ₹19.9 L/yr - ₹32.1 L/yr |
Graphic Designer
180
salaries
| ₹1.8 L/yr - ₹4.5 L/yr |
Software Engineer
156
salaries
| ₹10.9 L/yr - ₹18 L/yr |
Lead Software Engineer
118
salaries
| ₹32.5 L/yr - ₹50 L/yr |
Production Artist
56
salaries
| ₹2 L/yr - ₹5 L/yr |
TNQ Tech Private Limited
OMICS International
Amar Ujala
Xerox