Photon Interactive
60+ Interview Questions and Answers
Q1. What are design patterns, and have you implemented any of the design pattern in your previous project, can you explain?
Design patterns are reusable solutions to common software design problems.
Design patterns help in creating flexible, reusable, and maintainable code.
Examples of design patterns include Singleton, Factory, Observer, and Decorator.
I have implemented the Singleton pattern in my previous project to ensure only one instance of a class is created.
I have also used the Factory pattern to create objects without exposing the instantiation logic to the client code.
Q2. What tools do you use and why do you required them?
As a Business Analyst, I use various tools to analyze data, facilitate communication, and streamline processes.
Microsoft Excel: For data analysis and creating reports.
Tableau: For data visualization and creating interactive dashboards.
JIRA: For project management and tracking tasks.
Lucidchart: For creating process flowcharts and diagrams.
SQL: For querying databases and extracting relevant data.
Confluence: For documentation and collaboration.
PowerPoint: For creating presentati...read more
Q3. What is responsive design ? How will you develop responsive websites ?
Responsive design is an approach to web design that ensures optimal viewing experience across all devices.
Use flexible grids and layouts
Prioritize content and adjust font sizes and images accordingly
Test on multiple devices and screen sizes
Use media queries to adjust styles based on device characteristics
Consider touch screen navigation and interactions
Q4. what is ES6 feature small coding on how let,var,const works javascript set , closure (closure with different let scenarios) difference between function and class component use of sort destructure to insert elem...
read moreQuestions related to ReactJS development including ES6 features, lifecycle, custom hooks, and deployment.
ES6 features include let, const, arrow functions, and destructuring
Function components are simpler and class components have state and lifecycle methods
Sort method is used to sort arrays based on a given criteria
Browser router is used for client-side routing in React applications
Custom hooks are reusable functions that can be used across multiple components
Webpack is a mod...read more
Q5. Explain difference between Clustered index and non clustered index?
Clustered index determines physical order of data while non-clustered index creates a separate structure.
Clustered index determines the physical order of data in a table while non-clustered index creates a separate structure to store the indexed columns.
A table can have only one clustered index while multiple non-clustered indexes can be created.
Clustered index is faster for retrieving large amounts of data while non-clustered index is faster for retrieving small amounts of d...read more
Q6. What techniques do apply for evaluate the business requirement?
Business analysts use various techniques to evaluate business requirements.
Interview stakeholders to gather requirements
Conduct workshops and brainstorming sessions
Create use cases and user stories
Perform gap analysis
Conduct feasibility studies
Use prototyping and wireframing
Perform cost-benefit analysis
Conduct risk assessments
Use data modeling and process modeling techniques
Q7. What is the difference between shared and final layout in sitecore. explain with examples.
Shared and Final Layout in Sitecore
Shared Layout is used for all items that inherit from a specific template
Final Layout is used for the specific item and overrides the shared layout
Shared Layout can be edited by multiple users while Final Layout is locked
Shared Layout is stored in the __Standard Values while Final Layout is stored in the item itself
Example: Changing the header of a website using Shared Layout will change it for all pages using that template
Example: Changing ...read more
Q8. Write about the Use case & description for the given scenario?
Use case and description for the given scenario
Identify the problem or opportunity that the use case aims to address
Describe the actors or stakeholders involved in the use case
Outline the main steps or interactions in the use case
Specify the expected outcome or benefits of the use case
Q9. Find the vowels in a string and convert that into upper case
Convert vowels in a string to uppercase
Iterate through each character in the string
Check if the character is a vowel (a, e, i, o, u)
If it is a vowel, convert it to uppercase
Q10. What are synchronous and asynchronous calls ?
Synchronous calls wait for a response before continuing, while asynchronous calls do not wait and continue executing.
Synchronous calls block the execution until a response is received
Asynchronous calls do not block the execution and continue executing
Synchronous calls are easier to understand and debug
Asynchronous calls are more efficient and prevent the UI from freezing
Examples of synchronous calls include function calls and HTTP requests made using the XMLHttpRequest object...read more
Q11. 1. Activity and fragment life cycle 2. Communicate between parents fragment to child fragment 3. Broadcasting receiver 4. How to implement MVVM design pattern for login page 5. Modifier in kotlin 6. Abstract vs...
read moreThe interview questions cover various topics related to Android development, including activity and fragment life cycle, communication between fragments, MVVM design pattern, Kotlin modifiers, abstract vs interface, coroutines, background services, and Room database implementation.
Understand the life cycle of activities and fragments in Android development
Use communication techniques like interfaces or shared view models to communicate between parent and child fragments
Implem...read more
Q12. What is your experience with implementing lazy loading?
Implemented lazy loading in web applications to improve performance by loading content only when needed.
Implemented lazy loading for images on a website to reduce initial page load time.
Utilized libraries like Intersection Observer to trigger loading of elements when they come into view.
Implemented lazy loading for components in a single page application to improve user experience.
Q13. 1.what is testing 2. what is scrum and sprint 3.api methods 4.smoke nd regression testing 5.deffered error 6.integratin and system testing 7.bug life cycle 8.testcase writing 9.agile methodology
Answers to common interview questions for a Software Testing Engineer position.
Testing is the process of evaluating a system or its component(s) with the intent to find whether it satisfies the specified requirements or not.
Scrum is an agile framework for managing work, and Sprint is a time-boxed iteration of work in Scrum.
API methods are functions that allow developers to interact with a software application or web service.
Smoke testing is a quick and shallow test to ensure ...read more
Q14. What is higher order component?
Higher order component is a function that takes a component and returns a new component with additional functionality.
HOC is a design pattern in React
It allows code reuse, logic abstraction and composition
Examples include withRouter, connect, and memo
Q15. Write some contents of a BRD?
A BRD (Business Requirements Document) outlines the objectives, scope, and functional requirements of a project.
Defines the purpose and goals of the project
Identifies the stakeholders and their roles
Describes the current and desired business processes
Specifies the functional and non-functional requirements
Includes use cases, user stories, and acceptance criteria
Outlines the project timeline and milestones
Details the risks and assumptions
Provides a high-level overview of the s...read more
Q16. Write a javascript code to compare given two dates
Javascript code to compare two dates
Convert the dates to Date objects
Use the getTime() method to get the time in milliseconds
Compare the two time values
Q17. Tell 5 new features of HTML 5
HTML 5 has many new features that enhance web development.
New semantic elements like
, New form controls like date pickers, range sliders, etc.
Improved multimedia support with
Canvas element for dynamic graphics and animations.
Offline storage with local storage and web SQL database.
Q18. two sums from leetcode, NSOperation vs GCD, View life cycle, tuple
The interview question covers topics like solving two sum problems, NSOperation vs GCD, view life cycle, and tuples.
Two sum problems involve finding two numbers in an array that add up to a specific target. Example: [2, 7, 11, 15], target = 9
NSOperation and GCD are both used for concurrent programming in iOS. NSOperation provides more control and features, while GCD is lower level and more lightweight.
View life cycle in iOS involves methods like viewDidLoad, viewWillAppear, v...read more
Q19. 13. Write reverse string program in kotlin 14. Safe call and null check operator
Reverse a string and demonstrate safe call and null check operator in Kotlin
To reverse a string in Kotlin, you can use the built-in extension function 'reversed()'
Safe call operator '?' is used to safely access properties of nullable objects without causing NullPointerException
Null check operator '!!' is used to explicitly throw a NullPointerException if a nullable object is null
Q20. Explain how do you handle large data processing in Pyspark
Large data processing in Pyspark involves partitioning, caching, and optimizing transformations for efficient processing.
Partitioning data to distribute workload evenly across nodes
Caching intermediate results to avoid recomputation
Optimizing transformations to minimize shuffling and reduce data movement
Q21. Explain how do you implement data governance in your company
Data governance is implemented through policies, processes, and tools to ensure data quality, security, and compliance.
Establish data governance policies and procedures to define roles, responsibilities, and processes for managing data
Implement data quality controls to ensure accuracy, completeness, and consistency of data
Utilize data security measures such as encryption, access controls, and monitoring to protect sensitive data
Enforce compliance with regulations and standard...read more
Q22. What is solid principle ?
SOLID principles are a set of five design principles that help make software designs more understandable, flexible, and maintainable.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Objects of a superclass should be replaceable with objects of its subclasses without affecting the functionality.
I - Interface ...read more
Q23. what is singleton pattern ?
Singleton pattern ensures a class has only one instance and provides a global point of access to it.
Used to restrict instantiation of a class to one object
Commonly used in logging, driver objects, caching, thread pools, etc.
Implemented by creating a static method to return the same instance each time
Q24. Write a code for Entity framework DB connection
Code snippet for Entity Framework DB connection
Install Entity Framework NuGet package
Create a DbContext class
Define DbSet properties for each entity
Configure connection string in app.config/web.config
Use DbContext to interact with the database
Q25. How do you handle resource issues
I handle resource issues by prioritizing tasks, reallocating resources, and communicating with stakeholders.
Identify the resource issue and its impact on the project
Prioritize tasks based on their importance and urgency
Reallocate resources from less critical tasks to more critical ones
Communicate with stakeholders to manage expectations and seek support
Collaborate with team members to find creative solutions
Monitor resource utilization and adjust plans as needed
Q26. Define the architecture of a decoupled system with pain points for security and performance.
Decoupled system architecture focuses on separating components for flexibility, but can introduce security and performance challenges.
Decoupled system architecture involves breaking down a system into smaller, independent components that communicate through APIs or messaging.
Security challenges can arise due to increased attack surface area, potential vulnerabilities in communication channels, and lack of centralized security controls.
Performance issues may occur from increas...read more
Q27. Adding and customising voice over (accessibility) support to Flutter app
To add voice over (accessibility) support to a Flutter app, use the accessibility features provided by Flutter and customize them as needed.
Use Semantics widget to add accessibility labels and actions to widgets in the app
Customize the voice over experience by providing specific instructions and descriptions for each widget
Test the accessibility features using a screen reader to ensure they work as intended
Q28. Tree map algo problem
Tree map algorithm problem
Tree map is a data structure that stores key-value pairs in a sorted order
The algorithm involves inserting, deleting, and searching for elements in the tree map
Common operations include finding the minimum and maximum values, and iterating over the elements
Examples of tree map implementations include Java's TreeMap and C++'s std::map
Q29. what is context api?
Context API is a way to manage global state in React applications.
Context API allows components to share data without passing props down the component tree.
It provides a way to avoid prop drilling and makes code more maintainable.
Context API consists of two parts: the Provider and the Consumer.
The Provider component allows data to be passed down to all child components.
The Consumer component allows components to access the data provided by the Provider.
Q30. What is prototype pattern
Prototype pattern is a creational design pattern that allows cloning of objects.
Used to create new objects by copying an existing object
Avoids the need for subclassing to create new objects
Can be implemented using shallow or deep copy methods
Q31. Why we using interface in C#
Interfaces in C# provide a way to define a contract for classes to implement, promoting code reusability and flexibility.
Interfaces allow for multiple inheritance in C# by allowing a class to implement multiple interfaces.
Interfaces help in achieving loose coupling between classes, making the code more maintainable and testable.
Interfaces are used to define common behavior that multiple classes can share, promoting code reuse.
Interfaces are used in C# to enable polymorphism, ...read more
Q32. Explain about jet compose
Jet Compose is a modern UI toolkit for building native Android apps using a declarative approach.
Jet Compose is a declarative UI framework for building Android apps.
It allows developers to create UI components using Kotlin code.
Jet Compose simplifies UI development by eliminating the need for XML layouts.
It provides a more flexible and efficient way to create dynamic UIs.
Jet Compose is part of the Jetpack libraries provided by Google.
Q33. Sealed claa in kotlin
Sealed classes in Kotlin are used to represent restricted class hierarchies.
Sealed classes can have a limited set of subclasses defined within the same file.
They are useful for representing a fixed set of types in a hierarchy.
Sealed classes are often used in when expressions for exhaustive checks.
Q34. Extension function in kotlin
Extension functions in Kotlin allow you to add new functions to existing classes without modifying their source code.
Extension functions are defined outside of the class they extend.
They can be called on instances of the class as if they were regular methods.
They can access the properties and methods of the class they extend.
Example: fun String.isEmailValid(): Boolean { ... }
Example: fun Int.isEven(): Boolean { ... }
Q35. Null safety in kotlin
Null safety in Kotlin ensures that variables cannot hold null values unless explicitly specified.
Kotlin uses nullable and non-nullable types to enforce null safety.
The '?' operator is used to declare a variable as nullable.
Safe call operator '?.' is used to safely access properties or methods of nullable objects.
The '!!' operator is used for force unwrapping nullable types, but can lead to NullPointerExceptions.
Q36. Room data base explanation
Room database is a persistence library that provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
Room database simplifies database interactions by providing compile-time verification of SQL queries.
It consists of three main components: Entity, DAO (Data Access Object), and Database.
Entities represent tables in the database, DAOs define methods to interact with the database, and Database is the main access...read more
Q37. what is a promise? in javascript
A promise in JavaScript represents the eventual completion (or failure) of an asynchronous operation and its resulting value.
Promises are objects that represent the eventual completion (or failure) of an asynchronous operation.
They can be in one of three states: pending, fulfilled, or rejected.
Promises can be chained using .then() to handle success and failure.
Example: new Promise((resolve, reject) => { ... }).then(result => { ... }).catch(error => { ... });
Q38. What is Asp.net MVC
ASP.NET MVC is a web application framework developed by Microsoft that implements the model-view-controller pattern.
ASP.NET MVC separates the application into three main components: Model, View, and Controller.
It provides better control over HTML, CSS, and JavaScript compared to Web Forms.
It supports test-driven development and enables easier unit testing.
Routing in ASP.NET MVC allows for clean and SEO-friendly URLs.
Examples: HomeController.cs (Controller), Index.cshtml (View...read more
Q39. Tell me about the architecture
The architecture of an iOS app refers to the overall structure and organization of its code.
iOS apps typically follow the Model-View-Controller (MVC) architecture pattern.
The Model represents the data and business logic, the View displays the user interface, and the Controller manages the interactions between the Model and View.
Other popular architecture patterns for iOS apps include VIPER, MVVM, and Clean Architecture.
Choosing the right architecture depends on the specific n...read more
Q40. Explain about MVVM
MVVM is an architectural pattern used in software development, particularly in Android apps, to separate the user interface from the business logic.
MVVM stands for Model-View-ViewModel
Model represents the data and business logic
View is the UI component that displays the data and interacts with the user
ViewModel acts as a mediator between the Model and View, handling user interactions and updating the Model
MVVM helps in separating concerns, making code more modular and easier ...read more
Q41. Definition of Done and and Ready
Definition of Done and Ready in the context of business analysis
Definition of Done: Criteria that a product must meet to be considered complete and ready for release
Definition of Ready: Criteria that a user story must meet before it can be worked on by the team
Examples: Done criteria may include passing all tests, obtaining stakeholder approval, and documenting changes. Ready criteria may include having clear acceptance criteria, being estimated, and having dependencies ident...read more
Q42. 11. How to store sensible data
Sensitive data should be stored securely using encryption and secure storage mechanisms.
Use encryption algorithms like AES to encrypt sensitive data before storing it in the database.
Store encryption keys securely, separate from the data they encrypt.
Implement secure storage mechanisms like Android Keystore to protect sensitive data.
Avoid storing sensitive data in plain text or easily accessible formats.
Q43. Solid principle implemantion in c#
Solid principles are a set of design principles that help make software more maintainable, flexible, and scalable.
Single Responsibility Principle (SRP) - A class should have only one reason to change.
Open/Closed Principle (OCP) - Software entities should be open for extension but closed for modification.
Liskov Substitution Principle (LSP) - Objects of a superclass should be replaceable with objects of its subclasses without affecting the program's correctness.
Interface Segreg...read more
Q44. 12. Explain about the Keystore file
Keystore file is a secure container used to store cryptographic keys and certificates for Android applications.
Keystore file is used to securely store private keys, public keys, and certificates used for encryption and authentication in Android applications.
It helps in protecting sensitive information such as passwords, API keys, and other credentials.
Keystore file can be generated using keytool command-line utility or Android Studio.
It is important to keep the keystore file ...read more
Q45. What is Protocol?
A protocol is a set of rules or guidelines that define how data is transmitted and received in a network or system.
Protocols define the format, timing, sequencing, and error checking of data transmission.
Examples of protocols include HTTP, TCP/IP, and Bluetooth.
Protocols ensure that devices can communicate effectively and reliably with each other.
Q46. What do you think of photon
Photon is a particle representing a quantum of light or other electromagnetic radiation.
Photon is the basic unit of light and carries electromagnetic force.
It has zero rest mass and travels at the speed of light.
Photons are responsible for all electromagnetic interactions.
They can be absorbed or emitted by atoms during transitions.
Photons play a crucial role in technologies like lasers and solar cells.
Q47. Get 3 rd highest salary
To get the 3rd highest salary, we can use a SQL query with the 'LIMIT' and 'OFFSET' keywords.
Use a SQL query with 'ORDER BY salary DESC' to sort salaries in descending order.
Use 'LIMIT 1 OFFSET 2' to skip the first two highest salaries and get the 3rd highest salary.
Example: SELECT salary FROM employees ORDER BY salary DESC LIMIT 1 OFFSET 2;
Q48. Tools and Methods of lead generation.
Various tools and methods are used for lead generation, such as email marketing, social media, content marketing, SEO, and networking.
Email marketing campaigns
Social media advertising
Content marketing strategies
Search engine optimization (SEO)
Networking events and conferences
Q49. Create custom framework
Creating a custom framework involves organizing code into reusable components for easier development and maintenance.
Identify common functionalities that can be abstracted into separate modules
Create a new Xcode project and select 'Framework' as the template
Add your code files, resources, and dependencies to the framework project
Build the framework to generate a .framework file that can be imported into other projects
Q50. Print prime numbers 1...20 without help
Print prime numbers 1...20 without help
Iterate from 1 to 20
Check if each number is prime
Print the prime numbers
Q51. Definition of Done and Ready
Definition of Done and Ready in business analysis
Definition of Done: Criteria that a product must meet to be considered complete and ready for release
Definition of Ready: Criteria that a user story must meet before it can be worked on in a sprint
Examples: Done criteria may include passing all tests, obtaining stakeholder approval; Ready criteria may include detailed acceptance criteria, estimated effort
Both definitions help ensure clear communication and alignment within the ...read more
Q52. Name any 2 data lineage tools
Two data lineage tools are Apache Atlas and Informatica Enterprise Data Catalog.
Apache Atlas is an open source tool for metadata management and governance in Hadoop ecosystems.
Informatica Enterprise Data Catalog provides a comprehensive data discovery and metadata management solution.
Q53. what is useCallback hook?
useCallback is a hook in React that returns a memoized callback function
Returns a memoized callback function
Helps in optimizing performance by preventing unnecessary re-renders
Useful when passing callbacks to child components that rely on reference equality
Q54. Pagination in Flutter
Pagination in Flutter allows for efficient loading of large data sets by fetching and displaying data in chunks.
Use ListView.builder with a custom itemBuilder function to dynamically load data as the user scrolls.
Implement a pagination logic to fetch more data when the user reaches the end of the current data set.
Update the ListView with the new data and continue the process until all data is loaded.
Consider using packages like infinite_scroll_pagination for easier implementa...read more
Q55. what is hoist and closure
Hoisting is a JavaScript mechanism where variables and function declarations are moved to the top of their containing scope during the compilation phase. Closures are functions that have access to variables from their outer scope even after the outer function has finished executing.
Hoisting moves variable and function declarations to the top of their scope.
Closures allow functions to access variables from their outer scope even after the outer function has finished executing....read more
Q56. How do you optimise database
Optimizing database involves indexing, query optimization, normalization, and proper hardware configuration.
Use indexing to speed up data retrieval
Optimize queries by avoiding unnecessary joins and using appropriate indexes
Normalize database tables to reduce redundancy and improve data integrity
Consider hardware configuration like storage type and memory allocation for optimal performance
Q57. Mention your experind in detail
I have 5 years of experience as a Key Account Manager in the technology industry.
Managed and grew key accounts by 25% YoY
Developed and executed strategic account plans
Collaborated with cross-functional teams to deliver solutions
Negotiated contracts and pricing agreements
Provided exceptional customer service and support
Q58. var,let and const differences
var, let, and const are all used for variable declaration in JavaScript, but they have different scopes and behaviors.
var is function scoped, let and const are block scoped
var can be redeclared and updated, let can be updated but not redeclared, const cannot be redeclared or updated
const is used for variables that should not be reassigned, like constants
Q59. explain defect life cycle
Defect life cycle is the process of identifying, reporting, fixing, retesting, and closing defects in software development.
Defect identification: Defects are identified through testing, code reviews, or user feedback.
Defect reporting: Once a defect is identified, it is reported in a defect tracking system with details like steps to reproduce, severity, and priority.
Defect fixing: Developers analyze and fix the reported defects.
Defect retesting: QA engineers retest the fixed d...read more
Q60. Explanation about Redux
Redux is a predictable state container for JavaScript apps.
Redux is a library for managing the state of JavaScript applications.
It follows the Flux architecture pattern.
Redux provides a single source of truth for the application state.
Actions are dispatched to modify the state using pure functions called reducers.
Reducers specify how the state should change based on the dispatched actions.
Redux allows for time-travel debugging and easy state management in complex applications...read more
Top HR Questions asked in null
Interview Process at null
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month