Connectwise India
30+ Freyr Solutions Interview Questions and Answers
Q1. OOPs concepts and difference between abstraction vs encapsulation
Abstraction focuses on what an object does, while encapsulation focuses on how it does it.
Abstraction is the process of hiding complex implementation details and showing only the necessary information to the user.
Encapsulation is the process of wrapping data and methods into a single unit, preventing direct access to the data from outside the unit.
Abstraction is achieved through abstract classes and interfaces.
Encapsulation is achieved through access modifiers like public, pr...read more
Q2. what you do to find out issue in code
I use a combination of debugging tools and techniques to identify and resolve issues in code.
I start by reproducing the issue and identifying the scope of the problem.
I use debugging tools like breakpoints, logging, and tracing to narrow down the issue.
I review the code and documentation to understand the expected behavior.
I collaborate with team members to get a fresh perspective and brainstorm solutions.
I test and validate the fix before deploying it to production.
Q3. dependency injection, and compare it with concrete class
Dependency injection is a design pattern that allows objects to be passed as dependencies rather than being created within a class.
Dependency injection promotes loose coupling and makes code more testable.
Concrete classes are tightly coupled and can be difficult to test.
Dependency injection can be achieved through constructor injection, setter injection, or interface injection.
Example: A class that requires a database connection can be passed the connection object through dep...read more
Q4. Microservice architecture and how do you call one service from another service
Microservice architecture involves breaking down a large application into smaller, independent services. Services can communicate with each other through APIs.
Microservice architecture breaks down a large application into smaller, independent services that can be developed, deployed, and scaled independently.
Services communicate with each other through APIs, typically using HTTP/REST or messaging protocols like RabbitMQ or Kafka.
One service can call another service by making ...read more
Q5. how to improve query performance
Improving query performance involves optimizing database design, indexing, and query structure.
Optimize database design by normalizing tables and reducing redundant data
Create indexes on frequently queried columns
Use efficient query structure, such as avoiding subqueries and using joins
Consider using caching or denormalization for frequently accessed data
Q6. middleware and how it works
Middleware is software that connects different applications or systems together.
Middleware acts as a bridge between different applications or systems
It provides a common platform for communication and data exchange
Examples of middleware include message queues, API gateways, and ESBs
Q7. What is ADFS &how does it work? What is Autodiscover in O366, DHCP, DNS server, radius server and FSMO roles, BASIC MEM (INTUNE) site's and services, subnet, DireSync, conditional access policy in O365, basic A...
read moreQ8. temp table vs cte in sql
Temp tables are physical tables created in tempdb while CTEs are temporary result sets.
Temp tables are useful for storing intermediate results and can be indexed.
CTEs are useful for simplifying complex queries and can be recursive.
Temp tables require more resources and can cause contention in tempdb.
CTEs are limited to the scope of a single query.
Example: CREATE TABLE #temp (id INT); WITH cte AS (SELECT id FROM table) SELECT * FROM cte;
Example: WITH recursive_cte AS (SELECT 1...read more
Q9. what is your project architecture?
My project architecture follows a microservices design pattern with a combination of front-end and back-end technologies.
Utilizes microservices design pattern
Combination of front-end and back-end technologies
Uses RESTful APIs for communication between services
Q10. what is static, finally, super keywords
Keywords used in Java programming language
static keyword is used to create class-level variables and methods
finally keyword is used in exception handling to define a block of code that will always be executed
super keyword is used to refer to the superclass of the current object
Q11. SOLID priciple with example
SOLID principle is a set of five design principles to make software more maintainable, flexible and scalable.
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: Subtypes must be substitutable for their base types.
I - Interface Segregation Principle: Clients should not be forced to depend on interfaces they do n...read more
Q12. transient vs scope difference
Transient variables are not serialized, while scoped variables are.
Transient variables are not saved when an object is serialized and deserialized.
Scoped variables are saved when an object is serialized and deserialized.
Transient variables are used to indicate that a variable should not be serialized.
Scoped variables are used to indicate that a variable should be serialized.
Q13. Differencem between singly and doubly linked list
Singly linked list has one pointer in each node pointing to the next node, while doubly linked list has two pointers - one pointing to the next node and one pointing to the previous node.
Singly linked list is more memory efficient as it only requires one pointer per node.
Doubly linked list allows for traversal in both directions, while singly linked list only allows traversal in one direction.
Insertions and deletions are faster in doubly linked list as compared to singly link...read more
Q14. Write code to swap elements in array,use go
Code to swap elements in array using Go
Create a function that takes in an array of strings and two indices to swap
Use a temporary variable to store one of the elements before swapping
Update the array with the elements swapped
Q15. what is polymorphism and types
Polymorphism is the ability of a function or method to behave differently based on the object it is called with.
Polymorphism allows objects of different classes to be treated as objects of a common superclass.
Types of polymorphism include compile-time (method overloading) and runtime (method overriding) polymorphism.
Example: Animal superclass with subclasses Dog and Cat. Both Dog and Cat can be treated as Animals.
Q16. Types of exceptions with example
Types of exceptions include checked and unchecked exceptions.
Checked exceptions are checked at compile time, like IOException.
Unchecked exceptions are not checked at compile time, like NullPointerException.
Q17. Return all the pairs from array who's sum is equal to given value
Use a hash set to store elements as you iterate through the array, check if the difference between the target value and current element exists in the hash set.
Iterate through the array and store elements in a hash set
For each element, check if the difference between the target value and current element exists in the hash set
If it does, add the pair to the result array
Q18. How Authentication ams Authorisation is done
Authentication is the process of verifying the identity of a user, while authorization is the process of determining what resources a user can access.
Authentication can be done using various methods such as username/password, tokens, or biometrics.
Authorization involves assigning roles or permissions to users based on their identity.
Authentication and authorization are often implemented using frameworks like OAuth or JWT.
Examples include logging in with a username and passwor...read more
Q19. Explain Active directory concept
Active Directory is a Microsoft service that manages network resources and enables users to access them.
Centralized database of network resources and user accounts
Provides authentication and authorization for network resources
Allows for group policy management and application deployment
Can be used for single sign-on across multiple applications
Examples: user accounts, computers, printers, security groups
Q20. if youbare ready to qork in 24*7 scenario, team management and interpersonal skill
Q21. Explain Office 365 in details
Office 365 is a cloud-based subscription service that provides access to various Microsoft Office applications and productivity tools.
Includes popular applications like Word, Excel, PowerPoint, and Outlook
Offers cloud storage through OneDrive
Allows collaboration and communication through Teams and SharePoint
Provides security features like data encryption and multi-factor authentication
Offers different plans for personal and business use
Q22. Can we create string 2 from string 1.
Yes, string 2 can be created from string 1 by rearranging the characters.
String 2 can be created by rearranging the characters of string 1.
Use sorting or permutation algorithms to rearrange the characters.
Example: String 1 = 'hello', String 2 = 'olleh'
Q23. Return orginal string from compressed string
Decompress a compressed string to return the original string
Iterate through the compressed string and rebuild the original string based on the characters and their frequencies
Use a stack to keep track of characters and their frequencies while decompressing the string
Q24. How many promise method you know?
There are several promise methods in JavaScript, including .then(), .catch(), .finally(), and more.
Common promise methods include .then(), .catch(), and .finally()
Other promise methods include .all(), .race(), and .resolve()
Examples: promise.then(), promise.catch(), promise.finally()
Q25. What you know about windows patching.
Windows patching refers to the process of updating and fixing vulnerabilities in the Windows operating system.
Windows patching is essential for maintaining system security and stability.
Patches are released by Microsoft regularly to address security vulnerabilities, bugs, and improve performance.
Patching can be done manually or automatically through Windows Update.
Failure to patch Windows can leave systems vulnerable to cyber attacks.
Regular patching helps in ensuring system ...read more
Q26. Compress the string aaabbbbaaa to 3a4b3a
Use a loop to iterate through the string and count consecutive characters.
Iterate through the string and keep track of the current character and its count.
Append the character and its count to a new string.
Return the compressed string.
Q27. Sql queries to find 3rd highest salary
Use SQL query with ORDER BY and LIMIT to find 3rd highest salary
Use ORDER BY clause to sort salaries in descending order
Use LIMIT 2,1 to skip first two highest salaries and get the third highest salary
Q28. What are top 10 vulnerabilities
Top 10 vulnerabilities include SQL injection, cross-site scripting, insecure deserialization, etc.
SQL injection
Cross-site scripting (XSS)
Insecure deserialization
Sensitive data exposure
Broken authentication
Security misconfigurations
XML external entities (XXE)
Broken access control
Security misconfigurations
Insufficient logging and monitoring
Q29. What is dependency injection
Dependency injection is a design pattern in which a class receives its dependencies from external sources rather than creating them itself.
Allows for easier testing by injecting mock dependencies
Promotes loose coupling between classes
Improves code reusability and maintainability
Commonly used in frameworks like Spring in Java
Q30. What are middlewares
Middlewares are software components that act as a bridge between different applications or systems, facilitating communication and data exchange.
Middlewares help in managing communication between different software components
They can provide additional functionalities such as authentication, logging, and error handling
Examples include Express.js middleware in Node.js applications and middleware in web servers like Apache and Nginx
Q31. What are closures?
Closures are functions that have access to variables from their outer scope even after the outer function has finished executing.
Closures allow functions to access variables from their parent function's scope
They maintain references to their outer scope even after the outer function has finished executing
Closures are commonly used in event handlers and callbacks
Q32. Refer Microsoft articles.
The question is asking to refer Microsoft articles.
Microsoft has a vast knowledge base of articles on various topics related to technology.
These articles can be found on the Microsoft website or through a search engine.
Reading Microsoft articles can help in gaining knowledge and troubleshooting technical issues.
Some popular Microsoft articles include those related to Windows operating system, Office applications, and Azure cloud services.
Q33. What is XSS attack
XSS attack is a type of cyber attack where attackers inject malicious scripts into web pages viewed by other users.
XSS stands for Cross-Site Scripting.
Attackers inject malicious scripts into web pages to steal sensitive information or manipulate content.
Types of XSS attacks include stored, reflected, and DOM-based.
Prevent XSS attacks by validating input, encoding output, and using Content Security Policy.
Q34. Reverse string program.
A program to reverse a given string.
Iterate through the string from end to start and append each character to a new string.
Use built-in functions like reverse() or StringBuilder.reverse() in Java.
Convert the string to an array, reverse the array, and then convert it back to a string.
Q35. Duplicates in an array
Find and remove duplicates in an array of strings
Iterate through the array and use a Set to keep track of unique elements
Check if each element is already in the Set, if so, remove it from the array
Q36. weakness explain
I tend to be overly critical of my own work, which can sometimes lead to perfectionism.
I often spend too much time on a task trying to make it perfect
I have difficulty delegating tasks to others because I want to ensure they are done correctly
I can be self-critical and have high expectations for myself
Q37. Array for stack
An array of strings can be used to implement a stack data structure.
Use an array to store the elements of the stack.
Keep track of the top of the stack using an index variable.
Push elements onto the stack by adding them to the end of the array.
Pop elements from the stack by removing the element at the top of the array.
Top HR Questions asked in Freyr Solutions
Interview Process at Freyr Solutions
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month