29 October 2020

#Splunk

#Splunk

Key Concepts


Level Topic Sub-Topics
1Splunk OverviewWhat is Splunk, Splunk Use Cases, Machine Data, Splunk Architecture, Real-time vs Historical Data
2Splunk InstallationSystem Requirements, Splunk Enterprise Install, Forwarder Install, Windows Install, Linux Install
3Splunk ComponentsIndexer, Search Head, Forwarder, Deployment Server, License Master
4Splunk Data InputsFiles & Directories, TCP/UDP Inputs, Scripted Inputs, Windows Event Logs, Syslog
5Splunk Indexing ProcessParsing Phase, Indexing Phase, Buckets, Hot/Warm/Cold Buckets, Metadata
6Splunk Web InterfaceSearch Bar, Apps Menu, Dashboards, Settings, Monitoring Console
7SPL BasicsSearch Command, Keywords, Time Range Picker, Pipes, Fields
8SPL Searching & FilteringAND/OR/NOT, Wildcards, Field Searches, Time Modifiers, Subsearch
9Fields & Field ExtractionDefault Fields, Field Discovery, Regex Extraction, Delimiters, Field Aliases
10Transforming Commandsstats, chart, timechart, top, rare
11Reporting in SplunkReport Creation, Scheduling Reports, Export Formats, Sharing Reports, Report Acceleration
12Splunk DashboardsDashboard Panels, Visualization Types, XML Dashboards, Tokens, Inputs
13LookupsLookup Tables, CSV Lookups, Automatic Lookups, Lookup Commands, Geo Lookups
14Knowledge ObjectsFields, Tags, Event Types, Macros, Workflow Actions
15Splunk Apps & Add-onsSplunkbase, App Installation, Add-on Configuration, CIM Compliance, App Permissions
16Common Information Model (CIM)CIM Overview, Data Models, Normalization, Tags & Fields, CIM Validation
17Data ModelsData Model Structure, Pivot, Acceleration, Constraints, Datasets
18Alerts in SplunkAlert Types, Alert Conditions, Throttling, Actions, Email & Webhook Alerts
19User ManagementUsers & Roles, Capabilities, Authentication, Authorization, Role Mapping
20Splunk Security BasicsRBAC, Secure Ports, TLS/SSL, Audit Logs, Password Policies
21Forwarder ManagementUniversal Forwarder, Heavy Forwarder, Deployment Server, Server Classes, Outputs.conf
22Configuration Filesinputs.conf, outputs.conf, props.conf, transforms.conf, limits.conf
23Performance TuningSearch Optimization, Index Sizing, Bucket Management, Resource Monitoring, Acceleration
24Monitoring ConsoleIndexer Health, Search Head Health, Forwarder Status, Resource Usage, Alerts
25Splunk REST APIREST Basics, Authentication, Search API, Admin API, Use Cases
26Splunk Backup & RestoreIndex Backup, Config Backup, Cold to Frozen, Restore Process, Best Practices
27Splunk ScalingDistributed Search, Indexer Clustering, Search Head Clustering, Load Balancing, High Availability
28Troubleshooting SplunkSearch Issues, Indexing Issues, Forwarder Issues, Log Files, Common Errors
29Splunk Use CasesLog Monitoring, Security Analytics, IT Operations, Business Analytics, Compliance
30Splunk Interview & Certification PrepCommon Interview Questions, SPL Scenarios, Admin Concepts, Architect Concepts, Certification Path

Interview question

BASIC

  1. What is Splunk?
  2. What are the major components of Splunk?
  3. What is an Index in Splunk?
  4. What is a Splunk Forwarder?
  5. Difference between Universal Forwarder (UF) and Heavy Forwarder (HF)?
  6. What is a Search Head?
  7. What is sourcetype?
  8. What is props.conf used for?
  9. What is transforms.conf?
  10. Explain Splunk architecture.
  11. What is SPL in Splunk?
  12. What is the purpose of stats command?
  13. Difference between stats and eventstats?
  14. What is timechart command?
  15. What is eval command?
  16. What is a lookup in Splunk?
  17. What are field extractions?
  18. What are knowledge objects?
  19. What is a Dashboard?
  20. What are workflow actions?
  21. What is Splunkbase?
  22. What is indexes.conf?
  23. Difference between Search Head and Indexer?
  24. What are eventtypes?
  25. What are tags in Splunk?

INTERMEDIATE

  1. What is parsing in Splunk?
  2. What is indexing phase?
  3. What is a License Master?
  4. What are buckets in Splunk?
  5. Explain hot, warm, cold, frozen buckets.
  6. What is summary indexing?
  7. What is a data model?
  8. What is CIM (Common Information Model)?
  9. Difference between tags and eventtypes?
  10. Difference between join and append?
  11. What is a subsearch?
  12. What is transaction command used for?
  13. How does rex command work?
  14. What is regex extraction?
  15. What is a deployment server?
  16. What is Search Head Clustering?
  17. What is Indexer Clustering?
  18. What is KV Store?
  19. What is Risk Analysis in Splunk ES?
  20. What are notable events?
  21. What are correlation searches?
  22. How do you use Splunk REST API?
  23. What are Alerts in Splunk?
  24. Explain data onboarding process.
  25. What is collect command?

ADVANCED

  1. What is tstats command?
  2. What are accelerated data models?
  3. Difference between lookup and inputlookup?
  4. Summary indexing vs report acceleration?
  5. How do you optimize Splunk searches?
  6. What is multisite indexer clustering?
  7. What is a cluster master?
  8. What is captain election in SHC?
  9. What is bucket replication?
  10. What is indexer discovery?
  11. What is HEC (HTTP Event Collector)?
  12. What is modular input?
  13. What is scripted input?
  14. Difference between Cribl and Splunk HF?
  15. What is Splunk Observability?
  16. How APM traces work in Splunk?
  17. Difference between metrics and events?
  18. What is Splunk Stream processor?
  19. Explain parsing performance optimization.
  20. What are typical SIEM use cases?
  21. How risk score is calculated?
  22. What is UEBA in Splunk ES?
  23. Explain threat intel integration.
  24. What is collect command?
  25. How do you scale a large Splunk deployment?

EXPERT

  1. Design Splunk architecture for 100TB/day ingestion.
  2. Explain multi-region Splunk deployment.
  3. How do you implement CI/CD for Splunk apps?
  4. Scaling Search Head Clusters for enterprise workloads.
  5. What is DMC (Monitoring Console)?
  6. Explain storage tiering in Splunk.
  7. How to approach Splunk migration?
  8. Explain RBAC and governance in Splunk.
  9. How to tune correlation searches in ES?
  10. Explain SOAR integration with Splunk ES.
  11. On-prem vs Cloud Splunk migration approach?
  12. HEC load balancing mechanisms?
  13. Blueprint for optimized forwarder architecture.
  14. Explain advanced risk-based alerting (RBA).
  15. What is DDAA in ES?
  16. Using MLTK (Machine Learning Toolkit) in ES.
  17. How to automate playbooks in SOAR?
  18. What is workload management in Splunk?
  19. How to optimize saved searches?
  20. How to design complex data models?
  21. What are Splunk trust boundaries?
  22. How Splunk is used for DevSecOps pipelines?
  23. What is guarded search mode?
  24. Explain advanced clustering topologies.
  25. How to secure Splunk for regulated environments?

Related Topics


   Splunk Architecture   
   Splunk Components   
   Splunk Data Inputs   
   Splunk Indexing Process   
   SPL Basics   

#ReactJS

#ReactJS

Key Concepts


S.No Topic Sub-Topics
1Introduction to ReactWhat is React, SPA Architecture, Virtual DOM, React Features, Prerequisites
2Environment SetupNode & npm, Create React App, Folder Structure, Dev Server, Basic App
3JSX BasicsJSX Syntax, Embedding Expressions, Babel, JSX Rules, Differences from HTML
4ComponentsFunctional Components, Class Components, Props Basics, Component Reuse, Composition
5Props & StateProps Usage, Passing Data, useState Hook, State Definition, State vs Props
6Event HandlingEvent Basics, Synthetic Events, Event Binding, Passing Params, Event Objects
7Conditional RenderingIf/Else, Ternary, Logical &&, Conditional Component, Fragments
8Lists & KeysDynamic Lists, Array.map(), Key Importance, Nested Lists, List Styling
9FormsControlled Components, Uncontrolled Components, Submit Handler, Text Inputs, Form Validation
10useEffect HookEffects Intro, Dependency Array, Cleanup, API Calls, Multiple Effects
11React RouterRouter Setup, Routes, Link & NavLink, URL Params, Navigate
12Context APICreateContext, Provider, useContext, Avoid Props Drilling, State Sharing
13Custom HooksWhy Custom Hooks, Rules, Business Logic Hook, Reusable Hook, useFetch
14Performance OptimizationReact.memo, useMemo, useCallback, Batching, Re-render Control
15State ManagementLifting State, Global Store, Redux Intro, Reducer, Actions Flow
16Redux ToolkitRTK Install, createSlice, Store Setup, Provider, Dispatch & Selector
17Async OperationsAxios, Fetch API, Async/Await, Error Handling, Loading States
18Error BoundariesFallback UI, Logging, Try/Catch, Boundary Component, Debugging
19Optimization IIProfiler, Pure Components, Code Splitting, Lazy Loading, Tree Shaking
20TestingJest Basics, RTL Intro, Mocking API, Unit Tests, Snapshot Testing
21Advanced PatternsHOC Pattern, Render Props, Compound Components, Provider Pattern, Hooks Composition
22React with TypeScriptTS Setup, Props Typing, State Typing, Custom Types, Interfaces
23StylingCSS Modules, Styled Components, Tailwind CSS, Material UI, Chakra UI
24AuthenticationLogin Flow, JWT Token, Protected Routes, Session Storage, Role-Based UI
25DeploymentBuild App, Netlify, Vercel, GitHub Pages, Environment Config
26Next.js BasicsSSR, SSG, Routing, Layouts, API Routes
27ArchitectureFolder Structure, Atomic Design, Feature Based Structure, Clean Code, Service Layer
28Best PracticesDRY Principle, KISS, Performance Tips, Error Handling, Security
29Project DevelopmentUI Planning, Component Design, Data Flow, State Logic, Router + Redux
30Final ReviewCode Cleanup, Documentation, Testing Coverage, Refactor, Deployment

Interview question

Basic Level

  1. What is ReactJS?
  2. What is the difference between React and Angular?
  3. What is JSX in React?
  4. Why do we use JSX instead of JavaScript?
  5. What is a component in React?
  6. What is the difference between functional and class components?
  7. What are props in React?
  8. What is state in React?
  9. Difference between state and props?
  10. What is Virtual DOM in React?
  11. Explain the concept of one-way data binding.
  12. What is create-react-app?
  13. What is the purpose of render() method?
  14. What are lifecycle methods in React?
  15. What is a controlled component?
  16. What is an uncontrolled component?
  17. How do you handle events in React?
  18. What are fragments in React?
  19. What is the purpose of key in React lists?
  20. What is conditional rendering?
  21. How do you update the state in React?
  22. What is React Router?
  23. What is context API?
  24. What are hooks in React?
  25. What is useState hook?

Intermediate Level

  1. What is useEffect hook used for?
  2. Difference between useEffect and lifecycle methods?
  3. What causes a re-render in React?
  4. What is prop drilling?
  5. How to avoid prop drilling?
  6. What is useContext hook?
  7. What are custom hooks?
  8. What is memoization?
  9. What is React.memo?
  10. What is useMemo hook?
  11. What is useCallback hook?
  12. Difference between useMemo and useCallback?
  13. How do you fetch data in React?
  14. What is axios?
  15. What is lazy loading?
  16. What is error boundary?
  17. What is suspense in React?
  18. Explain code splitting in React.
  19. What is ReactDOM?
  20. Difference between JSX and HTML?
  21. What are controlled inputs?
  22. How do you share data between siblings?
  23. What is Context Provider and Consumer?
  24. What is Redux?
  25. How do you implement routing?

Advanced Level

  1. What is Redux architecture?
  2. What are actions in Redux?
  3. What are reducers in Redux?
  4. What is a Redux store?
  5. What are middleware in Redux?
  6. What is Redux Thunk?
  7. Difference between Redux Thunk and Saga?
  8. What is createSlice in Redux Toolkit?
  9. What is immutability in React?
  10. How do you optimize performance in React?
  11. What is reconciliation algorithm?
  12. What is hydration?
  13. What is Render Props pattern?
  14. What are Higher Order Components (HOC)?
  15. What are compound components?
  16. Context vs Redux?
  17. What is SSR in React?
  18. What is SSG?
  19. What are API routes in Next.js?
  20. What is hydration mismatch?
  21. What is StrictMode in React?
  22. What is priority rendering?
  23. Explain batching in React.
  24. What are portals in React?
  25. What is tree-shaking?

Expert Level

  1. How does React?s Fiber architecture work?
  2. Explain the reconciliation algorithm in depth.
  3. Difference between useLayoutEffect and useEffect?
  4. What is concurrent mode in React?
  5. Explain React render phases (render/commit).
  6. How do you build reusable component libraries?
  7. Explain micro-frontends with React.
  8. What is React Profiler?
  9. How do you debug performance issues?
  10. SSR vs CSR?
  11. Explain static site generation use-cases.
  12. How does React work internally with DOM?
  13. Rules of React Hooks?
  14. How to create custom middleware in Redux?
  15. Explain observer pattern in React.
  16. Difference between context selector and global state?
  17. Explain atomic design architecture.
  18. How to optimize React app for SEO?
  19. How do you avoid unnecessary re-renders?
  20. How does Suspense work internally?
  21. Explain state normalization.
  22. Explain Flux architecture in detail.
  23. How do you handle error logging in production?
  24. How do you structure large enterprise React apps?
  25. Explain distributed state management in complex applications.

Related Topics


#Angular

#Angular

Key Concepts


Topic Sub-Topics (comma separated) Basic Intermediate Advanced Expert
Angular Fundamentals Introduction, Angular vs AngularJS, TypeScript Basics, Components, Modules
Data Binding Interpolation, Property Binding, Event Binding, Two-way Binding
Directives Built-in Directives, Structural Directives (ngIf, ngFor), Attribute Directives, Custom Directives
Components & Templates Component Lifecycle, Template Syntax, ViewEncapsulation, Change Detection
Services & Dependency Injection Services, Providers, Hierarchical Injection, Injectable Decorator
Routing RouterModule, RouterOutlet, Route Guards, Lazy Loading, Preloading Strategies
Forms Template-driven Forms, Reactive Forms, Form Validation, Custom Validators, Async Validators
Observables & RxJS Observables, Subjects, Operators (map, filter, switchMap), AsyncPipe
HTTP Client HttpClientModule, GET/POST/PUT/DELETE, Interceptors, Error Handling, Retry Mechanism
State Management Local Component State, Service-based State, NgRx, Redux, Akita
Pipes Built-in Pipes, Custom Pipes, Pure vs Impure Pipes, Async Pipe
Angular CLI Project Setup, Generate Components, Build, Serve, Test
Testing Unit Testing (Jasmine, Karma), Component Testing, Service Testing, E2E Testing (Protractor, Cypress)
Performance Optimization OnPush Change Detection, TrackBy, Lazy Loading, Preloading, Bundle Optimization
Internationalization (i18n) Built-in i18n, ngx-translate, Localization, Multi-language Support
Angular Universal Server-Side Rendering, Pre-rendering, SEO Optimization
Advanced Angular Dynamic Components, Content Projection, ViewContainerRef, ElementRef
Security XSS Protection, DomSanitizer, Route Guards, JWT Authentication
Progressive Web Apps (PWA) Service Workers, Manifest, Offline Caching, Push Notifications
Micro Frontends Module Federation, Angular with Webpack, Nx Monorepos
Change Detection Strategy Default Strategy, OnPush Strategy, Zone.js, Manual Detection
Angular Material & UI Libraries Material Components, CDK, PrimeNG, Bootstrap Integration
Build & Deployment AOT Compilation, Ivy Renderer, Production Builds, Dockerization
Advanced RxJS Higher-order Observables, Multicasting, Custom Operators, RxJS Best Practices
Monorepo & Workspace Management Angular Workspace, Nx, Lerna, Code Sharing

Interview question

1. Angular Core

  1. What is Angular and how is it different from AngularJS?
  2. What are Angular Modules and why are they important?
  3. What are Angular decorators? Name a few.
  4. Explain the role of NgModule in Angular.
  5. What is a singleton pattern in Angular modules?
  6. What is Ivy in Angular?
  7. What is Angular CLI and its benefits?
  8. What is Ahead-of-Time (AOT) compilation?
  9. Explain Angular?s compilation process.
  10. Difference between Angular compiler (ngc) and TypeScript compiler (tsc)?
  11. How does Angular support TypeScript features?
  12. What is tree-shaking in Angular?
  13. Explain Angular zones and their purpose.
  14. What is Angular Universal?
  15. How does Angular handle internationalization (i18n)?
  16. What is differential loading in Angular?
  17. What are polyfills in Angular?
  18. What are Angular schematics?
  19. How does Angular handle DOM sanitization?
  20. What is the purpose of Angular package.json configuration?

2. Components

  1. What is a component in Angular?
  2. How do you create a component using Angular CLI?
  3. What is a component selector?
  4. Difference between inline and external templates?
  5. What are component lifecycle hooks? Explain them.
  6. How does ngOnInit differ from a constructor?
  7. How do you pass data from parent to child component?
  8. How do you emit events from child to parent?
  9. What is ViewEncapsulation in Angular?
  10. Difference between Shadow DOM and Emulated encapsulation?
  11. How do you use @Input() and @Output() decorators?
  12. What is Content Projection (ng-content)?
  13. Difference between ViewChild and ContentChild?
  14. What are dynamic components?
  15. How do you reuse components across modules?
  16. What are smart and dumb components?
  17. How do you style Angular components?
  18. How do you test a component in Angular?
  19. What is OnPush change detection in components?
  20. What are standalone components in Angular?

3. Directives

  1. What are Angular directives?
  2. Difference between structural and attribute directives?
  3. Examples of built-in directives in Angular?
  4. What is *ngIf and how does it work?
  5. What is *ngFor and how does trackBy improve performance?
  6. What is ngSwitch directive?
  7. How do you create a custom directive?
  8. Difference between host binding and host listener?
  9. What is ngClass and ngStyle directive?
  10. What are async pipes and how are they used with directives?
  11. Can you apply multiple directives to the same element?
  12. Difference between ElementRef and Renderer2?
  13. What is a structural directive marker (*)?
  14. How do you conditionally apply classes using directives?
  15. What are template reference variables in directives?
  16. What is the purpose of Angular template syntax #var?
  17. How do you manipulate DOM safely in directives?
  18. How to share data between directives?
  19. Difference between attribute binding and property binding?
  20. Best practices when creating custom directives?

4. Services & Dependency Injection

  1. What is a service in Angular?
  2. Why do we use services instead of duplicating logic in components?
  3. What is Dependency Injection (DI)?
  4. What is the difference between providedIn: root and module-level providers?
  5. What is hierarchical dependency injection in Angular?
  6. What happens if a service is provided at component level?
  7. How do you create a singleton service?
  8. How do you inject a service into another service?
  9. Difference between useClass, useValue, useFactory providers?
  10. What is a multi-provider in Angular?
  11. How does Angular resolve dependencies at runtime?
  12. What is the purpose of Injectable() decorator?
  13. What is Optional() dependency in Angular?
  14. What is Self() and SkipSelf() in Angular DI?
  15. How does Angular handle circular dependency in DI?
  16. What is the difference between root injector and module injector?
  17. How do you configure environment-based services?
  18. How do you mock a service in unit testing?
  19. What is InjectionToken in Angular?
  20. Explain the difference between service scope in lazy loaded vs eagerly loaded modules.

5. Routing & Navigation

  1. How is routing implemented in Angular?
  2. What is RouterModule and how is it configured?
  3. What are route parameters?
  4. How do you implement query parameters in Angular routing?
  5. What are route guards? Types of guards?
  6. Difference between CanActivate and CanDeactivate?
  7. What is CanLoad in routing?
  8. What is lazy loading in Angular routing?
  9. How to preload modules in routing?
  10. What is RouterOutlet directive?
  11. What is ActivatedRoute in Angular?
  12. Difference between snapshot and observable in ActivatedRoute?
  13. How do you handle route navigation programmatically?
  14. How to implement child routes in Angular?
  15. Difference between HashLocationStrategy and PathLocationStrategy?
  16. What is the difference between forRoot and forChild in routing?
  17. How do you create a custom route matcher?
  18. How do you implement wildcard routes?
  19. What is route resolver in Angular?
  20. How do you pass state while navigating routes?

6. Forms (Template-driven & Reactive)

  1. Difference between template-driven and reactive forms?
  2. What are form controls?
  3. What is FormGroup in reactive forms?
  4. How do you perform form validation in Angular?
  5. How do you create custom validators?
  6. What is async validation?
  7. What is FormBuilder in Angular?
  8. Difference between setValue() and patchValue()?
  9. How do you disable form controls dynamically?
  10. What is ngModel in Angular?
  11. How do you bind form data to components?
  12. How to reset a form programmatically?
  13. What is touched vs dirty in Angular forms?
  14. How do you handle cross-field validation?
  15. How do you show validation error messages dynamically?
  16. What is a dynamic form in Angular?
  17. Difference between synchronous and asynchronous validators?
  18. How do you test reactive forms?
  19. What is updateOn in reactive forms?
  20. What is the purpose of AbstractControl in Angular?

7. RxJS & Observables

  1. What is RxJS in Angular?
  2. Difference between Observable and Promise?
  3. What is a Subject in RxJS?
  4. Difference between Subject, BehaviorSubject, ReplaySubject?
  5. What is an Operator in RxJS? Examples?
  6. What is pipe() in RxJS?
  7. What is map, filter, and switchMap in RxJS?
  8. Difference between mergeMap, concatMap, and exhaustMap?
  9. What is debounceTime in RxJS?
  10. How do you unsubscribe from Observables?
  11. What are hot and cold Observables?
  12. What is shareReplay in RxJS?
  13. What is forkJoin operator?
  14. What is combineLatest operator?
  15. What is race operator in RxJS?
  16. How to create a custom Observable?
  17. What is takeUntil in RxJS?
  18. How does Angular use RxJS internally?
  19. Difference between async/await and Observables?
  20. What is the purpose of firstValueFrom and lastValueFrom?

8. Change Detection

  1. What is Angular?s change detection?
  2. What is the default change detection strategy?
  3. Difference between default and OnPush strategy?
  4. What is Zone.js in Angular?
  5. How to manually trigger change detection?
  6. What is ApplicationRef.tick() in Angular?
  7. What is ChangeDetectorRef in Angular?
  8. Difference between detectChanges() and markForCheck()?
  9. How does Angular optimize change detection?
  10. What is immutability and why does it help with OnPush?
  11. What is ngDoCheck lifecycle hook?
  12. How does Angular detect changes in arrays and objects?
  13. Difference between pure and impure pipes in change detection?
  14. What is the async pipe?s role in change detection?
  15. How does trackBy improve *ngFor performance?
  16. How does Angular handle change detection with observables?
  17. What happens when Zone.js is removed from Angular?
  18. Can you disable change detection temporarily?
  19. How do you profile Angular change detection performance?
  20. What is the difference between manual and automatic change detection?

9. Testing

  1. How do you unit test components in Angular?
  2. What is TestBed in Angular?
  3. What is Jasmine in Angular testing?
  4. What is Karma test runner?
  5. How do you mock services in Angular unit tests?
  6. What is a spy in Jasmine?
  7. How do you test HTTP requests in Angular?
  8. What is HttpTestingController?
  9. Difference between unit tests and integration tests?
  10. What is Protractor in Angular?
  11. What is Cypress and can it be used with Angular?
  12. What are async and fakeAsync utilities in Angular testing?
  13. How do you test form validation in Angular?
  14. How do you test route guards in Angular?
  15. How to test directives in Angular?
  16. How do you test pipes in Angular?
  17. What is Angular testing module?
  18. How do you test event emitters?
  19. Difference between shallow testing and deep testing?
  20. Best practices for Angular unit testing?

10. Performance & Best Practices

  1. How do you improve performance in Angular apps?
  2. What is Ahead-of-Time (AOT) compilation?
  3. What is Tree-shaking in Angular?
  4. How to optimize change detection for large applications?
  5. Best practices for structuring Angular applications?
  6. How does lazy loading improve performance?
  7. How do you reduce bundle size in Angular?
  8. What is Angular CLI build optimizer?
  9. What are service workers in Angular?
  10. How to implement server-side rendering (SSR)?
  11. What is differential loading and its benefits?
  12. How to handle memory leaks in Angular apps?
  13. What are best practices for RxJS usage?
  14. How to implement caching in Angular?
  15. Difference between ngZone run() and runOutsideAngular()?
  16. How to optimize *ngFor performance?
  17. What are Angular PWA best practices?
  18. How to secure Angular applications?
  19. What are Angular best practices for folder structure?
  20. How to improve initial load time in Angular apps?

Related Topics


22 October 2020

#Spring_AOP

#Spring_AOP

Key Concepts


Topic SubTopic Basic Intermediate Advanced Expert
Introduction What is AOP, Advantages, Use Cases
Terminology Aspect, JoinPoint, Pointcut, Advice, Weaving
Types of Advice Before, After, AfterReturning, AfterThrowing, Around
Pointcut Expressions Execution, Within, Args, Annotation, Bean
Spring AOP Architecture Proxy-based AOP, Target object, Advice chain
Proxy Types JDK Dynamic Proxy, CGLIB Proxy
AspectJ Integration @Aspect annotation, Spring configuration, XML support
Weaving Compile-time, Load-time, Runtime
Annotations in Spring AOP @Before, @After, @AfterReturning, @AfterThrowing, @Around
Order of Aspects @Order annotation, precedence, multiple aspects
Introduction to JoinPoints Accessing method parameters, signature, target object
AspectJ Expression Language Execution(), Within(), Args(), @annotation(), this(), target()
Introduction to Advice Methods Advice method parameters, returning values, handling exceptions
AOP Use Cases Logging, Transaction Management, Security, Performance Monitoring
Limitations of Spring AOP Cannot intercept calls within same class, Proxy limitations
Testing Aspects Unit testing, Mocking dependencies, AspectJ testing tools
Exception Handling in Advice AfterThrowing, handling custom exceptions
Performance Considerations Proxy creation cost, advice overhead, best practices
Dynamic Pointcuts Runtime matching, Conditional pointcuts
Introduction to AOP ProxyFactory ProxyFactoryBean, programmatic proxy creation
Spring Boot AOP Integration Auto-configuration, Aspect scanning, starter dependencies
Nested Aspects Combining multiple aspects, advice chaining order
Introductions (AOP feature) @DeclareParents, Introduction advice
Security Aspects Role-based access, Method security with AOP
Best Practices Avoid overusing AOP, maintain readability, minimize cross-cutting complexity
Advanced Topics Load-time weaving, Aspect precedence, custom pointcut expressions

Interview question

Basic Level

  1. What is AOP in Spring?
  2. What are the advantages of using AOP?
  3. What is a cross-cutting concern?
  4. What is an aspect in Spring AOP?
  5. What is advice in Spring AOP?
  6. What is a join point?
  7. What is a pointcut?
  8. What is weaving in AOP?
  9. What is a proxy in Spring AOP?
  10. Difference between proxy-based and AspectJ AOP?
  11. What is the difference between AOP and OOP?
  12. What are the different types of advice in Spring AOP?
  13. What is @Aspect annotation?
  14. How do you define a pointcut expression?
  15. What is the difference between before and after advice?
  16. What is after returning advice?
  17. What is after throwing advice?
  18. What is around advice?
  19. How do you apply multiple advices to the same join point?
  20. What is the default order of advice execution?
  21. How does Spring AOP integrate with Spring Boot?
  22. What is the difference between JDK dynamic proxy and CGLIB proxy?
  23. What limitations does Spring AOP have compared to AspectJ?
  24. How do you enable Spring AOP in XML configuration?
  25. How do you enable Spring AOP using annotations?

Intermediate Level

  1. How do you write a pointcut expression using execution()?
  2. How do you write a pointcut expression using within()?
  3. How do you write a pointcut expression using args()?
  4. How do you write a pointcut expression using @annotation()?
  5. What is the use of this() and target() pointcut designators?
  6. How do you combine multiple pointcut expressions?
  7. How do you pass method parameters to advice?
  8. How do you access return values in advice?
  9. How do you handle exceptions in advice?
  10. What is the use of JoinPoint object in advice?
  11. What is ProceedingJoinPoint?
  12. How do you implement around advice using ProceedingJoinPoint?
  13. How do you control the execution order of multiple aspects?
  14. How do you apply aspects to specific beans using @Component?
  15. How do you apply aspects using XML configuration?
  16. How do you test Spring AOP aspects?
  17. What are some common use cases for Spring AOP?
  18. How do you log method execution using AOP?
  19. How do you measure performance using AOP?
  20. How do you handle security using AOP?
  21. How do you implement transaction management using AOP?
  22. How do you create custom annotations for pointcuts?
  23. What are some best practices when using Spring AOP?
  24. How does AOP affect application performance?
  25. How do you debug AOP issues in Spring?

Advanced Level

  1. How does Spring AOP create proxies internally?
  2. How does CGLIB proxy differ from JDK dynamic proxy internally?
  3. What is the role of ProxyFactoryBean?
  4. How do you implement introduction (type) advice?
  5. How do you add methods or interfaces to existing beans?
  6. What is the difference between compile-time and runtime weaving?
  7. How do you use AspectJ load-time weaving?
  8. How do you configure AspectJ with Spring Boot?
  9. How do you implement conditional pointcuts?
  10. How do you implement dynamic pointcuts at runtime?
  11. How does Spring handle multiple aspects targeting the same join point?
  12. How do you handle nested aspects?
  13. How do you combine annotations and XML configuration in Spring AOP?
  14. How do you optimize AOP for performance?
  15. How do you avoid proxy overhead in Spring AOP?
  16. How do you handle self-invocation problem in AOP?
  17. How do you implement aspects for private methods?
  18. How do you handle exceptions thrown inside advice?
  19. How do you implement asynchronous advice?
  20. How do you implement retry logic using AOP?
  21. How do you handle method arguments modification in advice?
  22. How do you intercept return values and modify them?
  23. How do you implement caching using AOP?
  24. How do you implement auditing using AOP?
  25. How do you implement validation using AOP?

Expert Level

  1. How does Spring AOP differ from full AspectJ AOP?
  2. How do you configure AspectJ compile-time weaving?
  3. How do you configure AspectJ load-time weaving in a production environment?
  4. How do you integrate Spring AOP with other frameworks like Hibernate?
  5. How do you handle cross-module aspects in large projects?
  6. How do you monitor aspect execution in production?
  7. How do you handle aspect dependencies?
  8. How do you implement aspect prioritization in complex scenarios?
  9. How do you implement pointcut inheritance?
  10. How do you combine annotations and programmatic aspects?
  11. How do you implement custom pointcut designators?
  12. How do you implement security for aspect execution?
  13. How do you implement multi-threaded advice safely?
  14. How do you handle memory leaks with Spring AOP proxies?
  15. How do you implement logging with high-performance constraints?
  16. How do you implement aspect-driven performance metrics?
  17. How do you implement transaction rollback using AOP?
  18. How do you implement aspect-driven exception handling strategies?
  19. How do you implement dynamic proxies programmatically?
  20. How do you integrate Spring AOP with reactive programming?
  21. How do you use aspects in Spring WebFlux?
  22. How do you implement auditing for microservices using AOP?
  23. How do you implement cross-service logging using AOP?
  24. How do you integrate Spring AOP with cloud-native applications?
  25. What are the best practices for maintaining complex AOP configurations?

Related Topics


#Spring_Rest

#Spring_Rest

Key Concepts


Topic SubTopic (comma separated) Basic Intermediate Advanced Expert
Introduction to REST What is REST, REST Principles, HTTP Methods (GET, POST, PUT, DELETE), Idempotency
Spring REST Overview Spring MVC, @RestController, @RequestMapping, DispatcherServlet
Request Handling @GetMapping, @PostMapping, @PutMapping, @DeleteMapping, @PatchMapping
Path and Query Parameters @PathVariable, @RequestParam, Default Values, Optional Parameters
Request and Response Bodies @RequestBody, @ResponseBody, JSON and XML Conversion, HttpMessageConverter
Content Negotiation Produces/Consumes, MediaType, Accept Headers, Custom Converters
ResponseEntity & HTTP Status Codes ResponseEntity, HttpStatus, Custom Responses, Standard REST Practices
Exception Handling @ExceptionHandler, @ControllerAdvice, Custom Error Response, Global Exception Handling
Validation @Valid, @NotNull, @Size, BindingResult, Custom Validators
Data Binding & Conversion @InitBinder, Type Conversion, Formatters, Custom Converters
CORS (Cross-Origin Resource Sharing) @CrossOrigin, Global CORS Config, Security Config Integration
HATEOAS (Hypermedia as the Engine of Application State) HATEOAS Concepts, RepresentationModel, Link Building, HAL Format
Pagination & Sorting Pageable, Page, Sort, Spring Data REST Pagination
Filtering and Projection Request Filtering, DTO Projection, Jackson Views, Dynamic Fields
File Upload & Download MultipartFile, File Upload Endpoint, Download Response, MediaType Config
Spring Data REST RepositoryRestResource, Exposing Repositories, Projections, Excerpts
Versioning REST APIs URI Versioning, Header Versioning, Media Type Versioning, Best Practices
API Documentation Swagger (Springfox), OpenAPI 3, SpringDoc Integration, Custom Documentation
Security in REST Basic Auth, JWT, OAuth2, CSRF Protection, Secure Endpoints
Testing REST APIs MockMvc, WebTestClient, RestTemplate, TestRestTemplate, Integration Testing
RestTemplate GET/POST Requests, Error Handling, Exchange Method, Interceptors
WebClient (Reactive) Mono, Flux, Reactive Streams, Asynchronous Calls, Error Handling
Asynchronous REST Processing @Async, Callable, DeferredResult, CompletableFuture
Caching in REST APIs ETag, Cache-Control, Conditional GET, Spring Cache Integration
Rate Limiting API Throttling, Bucket4j, Redis-based Rate Limiting, Gateway Integration
API Gateway Integration Spring Cloud Gateway, Routing, Filters, Rate Control
Hypermedia and HAL Explorer HAL Browser, Link Discovery, Hypermedia Controls
Reactive REST (Spring WebFlux) Router Functions, Handler Functions, Functional Endpoints
Error Response Design Problem Details RFC 7807, Custom Error JSON, Validation Error Models
Metrics & Observability Micrometer, Prometheus, API Performance Metrics, Logging
Performance Optimization Connection Pooling, Async Calls, Compression, Lazy Loading
Internationalization (i18n) MessageSource, LocaleResolver, Error Message Localization
REST API Design Patterns DTO Pattern, Builder Pattern, Adapter Pattern
Best Practices Naming Conventions, Consistent HTTP Status Codes, Statelessness, Documentation
Deployment Containerization, Docker, Kubernetes, CI/CD Integration
Resilience & Fault Tolerance Circuit Breaker, Retry Mechanisms, Fallback, Resilience4j Integration
Advanced REST Patterns Richardson Maturity Model, Idempotency Keys, Long Polling
GraphQL vs REST Comparison, Use Cases, Coexistence Strategies
Event-driven REST APIs Webhooks, SSE (Server-Sent Events), Event Streaming
Real-world Scenarios Building CRUD APIs, E-commerce API, Authentication API
API Monitoring Logging, Tracing, Distributed Tracing, ELK Stack Integration

Interview question

Basic Level

  1. What is REST, and what does it stand for?
  2. What are the key principles of RESTful architecture?
  3. What are the main HTTP methods used in REST APIs?
  4. What is the difference between PUT and POST methods?
  5. What is idempotency in REST, and which methods are idempotent?
  6. What annotations are used to create RESTful web services in Spring?
  7. What is the purpose of @RestController in Spring?
  8. What is the difference between @Controller and @RestController?
  9. What does @RequestMapping do in Spring REST?
  10. How do you map different HTTP methods using annotations?
  11. What is the use of @PathVariable and @RequestParam?
  12. How do you handle JSON request and response in Spring REST?
  13. What is the role of @ResponseBody?
  14. What is ResponseEntity, and when should it be used?
  15. How do you return custom HTTP status codes from a REST endpoint?
  16. What is content negotiation in REST?
  17. What is the default format used by Spring REST for responses?
  18. How do you enable XML support in Spring REST?
  19. What is the function of HttpMessageConverter?
  20. What is the purpose of the @Valid annotation in REST APIs?
  21. What is a DTO in REST, and why is it used?
  22. How do you handle path variables with multiple values?
  23. How do you pass query parameters in a GET request?
  24. What is a REST client? Give examples in Spring.
  25. What are the main advantages of using RESTful APIs?

Intermediate Level

  1. What is exception handling in Spring REST?
  2. How do you use @ExceptionHandler for handling exceptions?
  3. What is @ControllerAdvice, and how does it work?
  4. How do you create a global error handler in Spring REST?
  5. What are the different HTTP status codes commonly used in REST APIs?
  6. How do you implement input validation using Spring Validator?
  7. How can you handle file uploads using Spring REST?
  8. How do you download files using Spring REST?
  9. What is the difference between @RequestBody and @ModelAttribute?
  10. What is CORS, and how do you enable it in Spring REST?
  11. How do you secure a REST API in Spring using Basic Authentication?
  12. How do you secure REST endpoints using JWT?
  13. How do you enable Swagger documentation in a Spring REST project?
  14. What is OpenAPI, and how does it relate to SpringDoc?
  15. How can you test REST endpoints using MockMvc?
  16. What is the use of RestTemplate in Spring?
  17. What are the drawbacks of RestTemplate compared to WebClient?
  18. What is WebClient, and how is it different from RestTemplate?
  19. How do you consume external APIs in Spring REST?
  20. How do you use query parameters with RestTemplate?
  21. What is the use of ResponseEntityExceptionHandler?
  22. How do you enable pagination and sorting in REST APIs?
  23. How do you handle validation errors in REST responses?
  24. What is @JsonIgnore used for in Spring REST?
  25. How do you implement a simple CRUD REST API in Spring Boot?

Advanced Level

  1. What is HATEOAS in Spring REST?
  2. What are the benefits of HATEOAS in RESTful APIs?
  3. How do you add links using RepresentationModel?
  4. What is the HAL format in Spring HATEOAS?
  5. How do you enable content negotiation for different clients?
  6. What are some common REST API design best practices?
  7. How do you handle versioning in REST APIs?
  8. What are the different approaches to versioning APIs in Spring?
  9. How do you implement custom exception responses?
  10. How do you log requests and responses in Spring REST?
  11. How do you implement a retry mechanism for failed REST calls?
  12. How do you implement caching in REST APIs?
  13. What is ETag, and how is it used for caching?
  14. How do you set custom HTTP headers in a response?
  15. How do you use filters or interceptors in Spring REST?
  16. What is the difference between a filter and an interceptor?
  17. How can you improve REST API performance?
  18. How do you implement rate limiting in Spring REST?
  19. What is Spring Data REST, and when should you use it?
  20. How does RepositoryRestResource work in Spring Data REST?
  21. What is the difference between Spring MVC and Spring WebFlux?
  22. How do you make asynchronous REST calls in Spring?
  23. What are functional endpoints in Spring WebFlux?
  24. How do you handle backpressure in reactive REST APIs?
  25. What are the pros and cons of using reactive programming in REST APIs?

Expert Level

  1. How do you design fault-tolerant REST services using Resilience4j?
  2. What is a circuit breaker, and how is it used in REST APIs?
  3. How do you use Retry and Fallback patterns in REST?
  4. How can you integrate Spring REST with an API Gateway?
  5. How do you handle distributed tracing across multiple REST services?
  6. What is Micrometer, and how do you use it to monitor REST endpoints?
  7. How do you integrate Prometheus or Grafana with Spring REST metrics?
  8. How can you log REST request latency and throughput?
  9. What are the strategies to avoid over-fetching and under-fetching in APIs?
  10. What is Richardson Maturity Model (RMM)?
  11. How do you achieve Level 3 of Richardson Maturity Model in REST?
  12. How do you handle long-running REST operations asynchronously?
  13. What is Server-Sent Events (SSE) in Spring?
  14. How do you implement SSE using Spring WebFlux?
  15. How can you implement an event-driven REST API?
  16. How do you design REST APIs for microservices communication?
  17. What is the difference between REST and GraphQL?
  18. How can REST and GraphQL coexist in a single application?
  19. How do you secure REST APIs using OAuth2 in Spring?
  20. What is token introspection, and how does it work in OAuth2?
  21. How do you manage role-based access control in REST APIs?
  22. How can you externalize API configurations using Config Server?
  23. How do you deploy Spring REST microservices in Kubernetes?
  24. What are the best practices for REST API logging and monitoring?
  25. How do you ensure backward compatibility in evolving REST APIs?

Related Topics


#Spring_Batch

#Spring_Batch
What is Spring Batch?
What are the key components of Spring Batch?
What is the difference between a Job and a Step?
What is chunk-oriented processing in Spring Batch?
What is the purpose of ItemReader, ItemProcessor, and ItemWriter?
What is the JobRepository in Spring Batch?
What is the role of JobLauncher?
How do you execute a Spring Batch job programmatically?
What are JobInstance and JobExecution?
What is the difference between Tasklet and Step?
What is the role of JobParameters?
What happens if you execute a Spring Batch job with the same JobParameters?
How do you configure a Spring Batch job to be restartable?
How can you skip a record during processing?
What is the difference between Retry and Skip in Spring Batch?
What are the default tables created by Spring Batch?
How do you use listeners in Spring Batch?
How do you enable fault-tolerance in a step?
What is a StepExecutionListener vs a JobExecutionListener?
How is transaction management handled in Spring Batch?
What is partitioning in Spring Batch?
How does remote partitioning differ from local partitioning?
How do you implement multi-threaded steps?
How do you use Spring Batch with Spring Boot?
How do you manage large datasets in Spring Batch?
What is the purpose of JobExplorer and JobOperator?
What is a CompositeItemProcessor?
How do you test a Spring Batch job?
How do you handle job scheduling in Spring Batch?
What strategies can you use to improve batch job performance?
What is FlatFileItemReader and how does it work?
What is JdbcCursorItemReader?
What is the difference between JdbcCursorItemReader and JpaPagingItemReader?
How do you configure a CSV file reader in Spring Batch?
How do you write batch output to a database?
How would you design a job that reads from a file and writes to a DB?
What if your job fails halfway through processing a million records?
How would you monitor and restart failed jobs in production?
How do you avoid duplicate job executions?
How do you version and maintain large batch jobs?
What is the default behavior when a job fails in Spring Batch?
What is the role of JobBuilderFactory and StepBuilderFactory?
How do you configure a job in JavaConfig (without XML)?
How do you make a job non-restartable?
What is ExecutionContext in Spring Batch?
How is ExecutionContext useful between steps?
Can a step be executed multiple times in the same job run?
What is the difference between Job Scope and Step Scope?
Why is @StepScope important for item readers/writers?
What happens when a step is marked allowStartIfComplete=true?
What are different types of listeners in Spring Batch?
How does ItemReadListener help in error logging?
When would you use a ChunkListener?
How to log job start and end time using listeners?
What is the order of listener execution?
When would you choose a Tasklet over a chunk-oriented step?
How do you configure a Tasklet?
What is RepeatStatus.FINISHED in a Tasklet?
Can a Tasklet step be made fault-tolerant?
What is the use of RepeatTemplate?
What is rollback behavior in a chunk?
How do you configure skip limit and retry limit?
What happens if skip and retry thresholds are exceeded?
How do you configure a custom SkipPolicy?
How to configure transactional boundaries at step level?
How do you achieve parallel processing in Spring Batch?
What is the difference between partitioning and multithreading?
How does the master-slave architecture work in remote partitioning?
What is the role of Partitioner interface?
How do you divide data into partitions using a custom partitioner?
What are the different types of ItemReaders provided by Spring Batch?
How to read data from an Excel file in Spring Batch?
How do you use StaxEventItemReader for XML files?
What are the built-in ItemWriter implementations?
What is CompositeItemWriter used for?
How do you pass parameters to a job at runtime?
What is JobParametersIncrementer?
How can you control step transitions?
What is JobExecutionDecider?
How do you conditionally skip a step?
How does Spring Batch support job restarts?
How do you ensure idempotency in batch jobs?
What is the role of JobRepository in restartability?
How does checkpointing work in chunk-based steps?
What is the impact of setting startLimit?
What metadata tables are used by Spring Batch?
What is stored in BATCH_JOB_EXECUTION table?
How do you clean metadata tables periodically?
Can you use a non-relational DB for Spring Batch metadata?
What happens if metadata tables are deleted accidentally?
How do you unit test an ItemProcessor?
What is JobLauncherTestUtils used for?
How do you write integration tests for a complete job?
What is @SpringBatchTest?
How do you mock an ItemReader?
How does Spring Boot simplify Spring Batch configuration?
What are key Spring Boot properties for batch jobs?
What happens when spring.batch.job.enabled=false?
How do you prevent automatic job execution in Spring Boot?
How do you schedule batch jobs using Spring Boot?
How would you migrate a legacy batch system to Spring Batch?
How do you handle back-pressure in Spring Batch processing?
How would you monitor thousands of batch jobs in production?
How would you batch-process streaming data?
How to avoid duplicate processing in distributed systems?
  • Core Concepts - Job, Step, JobInstance, JobExecution, StepExecution
  • Step Execution Model - ItemReader, ItemProcessor, ItemWriter
  • Key Interfaces - ItemReader<T>, ItemProcessor<I, O>, ItemWriter<O>, JobLauncher, JobRepository, JobBuilderFactory, StepBuilderFactory
  • Readers - FlatFileItemReader, JdbcCursorItemReader, JpaPagingItemReader, StaxEventItemReader
  • Writers - JdbcBatchItemWriter, JpaItemWriter, FlatFileItemWriter, StaxEventItemWriter
  • Chunk-oriented & Tasklet-based processing
  • Job Parameters
  • Retry & Skip Logic
  • Listeners: JobExecutionListener, StepExecutionListener, ItemReadListener, etc., for lifecycle hooks.
  • Transactions
  • Partitioning
  • Job Scheduling
  • Fault Tolerance - Retry, Skip, SkipPolicy and RetryPolicy
  • Composite Patterns - CompositeItemProcessor & CompositeItemWriter
  • RepeatTemplate
  • Parallel and Scalable Batch - Partitioning, Multithreaded Step, Remote Chunking, Remote Partitioning
  • Metadata Tables
  • Execution Flow Control - JobFlow, JobExecutionDecider, StepExecutionListener or JobExecutionListener
  • JobExplorer & JobOperator
  • JobLauncherTestUtils

#Spring_JPA

#Spring_JPA

Key Concepts


Topic SubTopic Basic Intermediate Advanced Expert
JPA Basics Introduction, Entities, Annotations
Entity Mapping @Entity, @Table, @Id, @GeneratedValue
Relationships @OneToOne, @OneToMany, @ManyToOne, @ManyToMany
JPQL Queries JPQL Basics, Parameters, Named Queries
Spring Data Repositories CrudRepository, JpaRepository, PagingAndSortingRepository
Derived Queries Method Naming, Query Derivation
Paging & Sorting Pageable, Sort, Slice
Custom Queries @Query Annotation, Native Queries
Criteria API CriteriaBuilder, Specifications
Transactions @Transactional, Propagation, Isolation
Caching First Level, Second Level, EhCache, Infinispan
Auditing @CreatedDate, @LastModifiedDate, AuditingEntityListener
Entity Lifecycle @PrePersist, @PostLoad, @PostUpdate
Performance Tuning N+1 Problem, FetchType (LAZY vs EAGER), Batch Fetching
Locking Optimistic Locking, Pessimistic Locking, @Version
Advanced Relationships Composite Keys, @EmbeddedId, @IdClass
JPQL Advanced Joins, Subqueries, Group By, Having
Projections Interface-based, DTO-based, Dynamic Projections
Multi-Database Multiple DataSources, Routing, Schema Separation
Query Optimization Query Hints, Fetch Joins, Plan Caching
Spring Boot Integration Auto Configuration, application.properties, application.yml
Specifications Predicate Composition, Complex Dynamic Queries
Event Handling EntityListeners, Domain Events, Application Events
Hibernate Internals Session, Persistence Context, Dirty Checking
Distributed Transactions XA Transactions, JTA Integration
Advanced Caching Redis, Hazelcast, Custom Cache Providers
Migration Migrating from JDBC/Hibernate to Spring Data JPA
Testing @DataJpaTest, H2 Database, Integration Testing
Best Practices DTO vs Entity, Entity Design, Batch Inserts
Scalability Sharding, Partitioning, Multi-Tenant Databases

Interview question

Basic Level

  1. What is Spring JPA and how does it differ from Hibernate?
  2. What is the role of @Entity annotation?
  3. Difference between CrudRepository, JpaRepository, and PagingAndSortingRepository.
  4. What is the use of @Table annotation?
  5. What is the difference between @Id and @GeneratedValue?
  6. How does JPA support primary key generation strategies?
  7. What is the difference between findById() and getOne()?
  8. Explain the concept of JPA Entity lifecycle.
  9. How does Spring Boot auto-configure JPA?
  10. What are derived queries in Spring Data JPA?
  11. How does query derivation work in Spring JPA?
  12. What is JPQL? How is it different from SQL?
  13. What is the role of @Query annotation?
  14. How do you enable Spring Data JPA in a project?
  15. What is the default fetch type for @OneToMany and @ManyToOne?
  16. Explain the difference between lazy and eager loading.
  17. How do you define relationships between entities?
  18. What is the difference between EntityManager and Session?
  19. How do you configure a datasource in Spring Boot with JPA?
  20. What is @Column annotation used for?
  21. How does pagination work in Spring Data JPA?
  22. Explain the difference between save() and saveAndFlush().
  23. What is the use of Optional in repository methods?
  24. What is an embedded entity in JPA?
  25. What is application.properties role in configuring JPA?

Intermediate Level

  1. How do you implement custom queries in Spring Data JPA?
  2. Difference between nativeQuery = true and JPQL queries.
  3. What is the role of @Modifying annotation?
  4. What are projections in Spring Data JPA?
  5. Difference between interface-based and class-based projections.
  6. How do you use DTO projections in JPA?
  7. What is the purpose of @Transactional in JPA?
  8. Explain transaction propagation types in Spring JPA.
  9. Explain isolation levels in JPA transactions.
  10. What is optimistic locking in JPA?
  11. What is pessimistic locking in JPA?
  12. How does JPA handle entity versioning?
  13. What are entity listeners in JPA?
  14. How do you implement auditing in Spring Data JPA?
  15. What is the purpose of @CreatedDate and @LastModifiedDate?
  16. How do you enable auditing in Spring Boot JPA?
  17. What is the role of @EnableJpaRepositories?
  18. Difference between JPQL and Criteria API.
  19. What is a Specification in Spring Data JPA?
  20. How do you create dynamic queries using Criteria API?
  21. What is the difference between EntityManager.merge() and EntityManager.persist()?
  22. How do you implement batch inserts in JPA?
  23. How does JPA handle relationships in JSON serialization?
  24. What is the N+1 select problem in JPA?
  25. How can you solve the N+1 problem in JPA?

Advanced Level

  1. How do you configure second-level caching in JPA?
  2. Difference between first-level and second-level caching.
  3. Which cache providers can be used with Spring JPA?
  4. How do you integrate Redis/Hazelcast as a cache with JPA?
  5. How does dirty checking work in JPA?
  6. Explain the difference between detach(), clear(), and close() in EntityManager.
  7. What is cascading in JPA? Types of cascade.
  8. What is orphan removal in JPA?
  9. How do you handle composite primary keys in JPA?
  10. Difference between @IdClass and @EmbeddedId.
  11. How do you use fetch joins in JPQL?
  12. How do you tune performance in Spring Data JPA queries?
  13. What are query hints in JPA?
  14. How do you handle multi-tenancy in Spring JPA?
  15. How does JPA support multiple datasources?
  16. What is the difference between JOIN FETCH and normal join?
  17. How do you implement pagination efficiently in large datasets?
  18. Explain the concept of entity graph in JPA.
  19. What is the difference between dynamic and static entity graphs?
  20. How does JPA handle inheritance mapping (SINGLE_TABLE, TABLE_PER_CLASS, JOINED)?
  21. When would you use MappedSuperclass in JPA?
  22. What is the role of @DiscriminatorColumn in inheritance mapping?
  23. How do you use Spring Data JPA with Querydsl?
  24. How do you implement event listeners in JPA (@PrePersist, @PostUpdate)?
  25. Explain lazy loading exceptions and how to avoid them.

Expert Level

  1. How do you design high-performance applications using JPA?
  2. What are the pitfalls of JPA in high-scale systems?
  3. How do you implement distributed transactions in JPA?
  4. Explain JTA and its role with JPA.
  5. What is the difference between XA transactions and local transactions?
  6. How do you use Spring JPA in microservices architecture?
  7. How does Spring JPA integrate with Spring Cloud?
  8. How do you optimize JPA queries for big data systems?
  9. How do you integrate JPA with Kafka for event-driven systems?
  10. How to use JPA with CQRS architecture?
  11. Explain Event Sourcing with JPA.
  12. How to handle schema evolution in Spring JPA applications?
  13. What are advanced strategies for handling large joins in JPA?
  14. How do you ensure zero-downtime deployments with JPA?
  15. What are the best practices for database migrations with JPA (Liquibase/Flyway)?
  16. How do you scale JPA applications with sharding and partitioning?
  17. What is polyglot persistence and how does JPA fit in?
  18. How do you secure JPA repositories in production systems?
  19. What are common anti-patterns in using JPA?
  20. How do you implement domain-driven design with JPA?
  21. How does JPA handle concurrency in distributed environments?
  22. What are advanced caching strategies with JPA?
  23. How do you debug performance bottlenecks in JPA?
  24. How do you profile SQL queries generated by JPA?
  25. How do you combine JPA with reactive programming models?

Related Topics


21 October 2020

#Jenkins

#Jenkins

Key Concepts


Topic Sub-Topics (comma separated) Basic Intermediate Advanced Expert
Jenkins Fundamentals Introduction, Features, Advantages, Jenkins Architecture, Master-Agent Concept
Installation & Setup System Requirements, Installing Jenkins (Windows/Linux), Initial Setup, Web UI Basics, Plugins Setup
Jenkins Jobs Freestyle Jobs, Build Triggers, Build Steps, Build Post-actions, Parameterized Jobs
Build Management Source Code Integration (Git, SVN), Build Tools (Maven, Gradle, Ant), Poll SCM, Scheduled Builds
Jenkins Pipeline Pipeline as Code, Declarative Pipeline, Scripted Pipeline, Pipeline Syntax, Stages & Steps
Plugins & Integrations Plugin Management, Popular Plugins (Git, Email, JUnit, Slack), External Tool Integration
Distributed Builds Master-Slave Setup, Node Configuration, Labels, Distributed Builds
Security & Access Control User Management, Matrix-based Security, Role-based Access Control, Credentials Management
CI/CD Concepts Continuous Integration, Continuous Delivery, Continuous Deployment, Best Practices
Jenkinsfile Basics, Syntax, Declarative vs Scripted, Groovy Scripting, Advanced Jenkinsfile Usage
Monitoring & Logging Build Logs, Console Output, System Logs, Jenkins Monitoring Tools
Backup & Restore Backup Jenkins Configuration, Restoring Jenkins, Best Practices
Notifications Email Notifications, Slack/MS Teams Integration, Custom Notification Scripts
Integration with DevOps Tools GitHub/GitLab Integration, Docker, Kubernetes, Ansible, Terraform
Scaling Jenkins Scaling Agents, Cloud Agents (AWS, Azure, GCP), Kubernetes-based Jenkins, Load Balancing
Jenkins Security Advanced Securing Jenkins Master/Agents, Hardening, SSL/TLS, Security Best Practices
Jenkins Administration Upgrading Jenkins, Managing Plugins, System Maintenance, Troubleshooting
Advanced Pipelines Shared Libraries, Parallel Execution, Dynamic Agent Allocation, Pipeline Optimization
Jenkins in Containers Running Jenkins in Docker, Docker Agents, Jenkins on Kubernetes, Helm Charts
Enterprise Jenkins Jenkins Operations Center, High Availability, Enterprise Scaling, Governance

Interview question

📘 Basic Level

  1. What is Jenkins, and why is it used?
  2. Who developed Jenkins, and what was its earlier name?
  3. What are the main features of Jenkins?
  4. What is a Jenkins job?
  5. What is a Jenkins pipeline?
  6. Explain the difference between Freestyle and Pipeline jobs.
  7. How do you install Jenkins?
  8. What are Jenkins plugins?
  9. How do you start/stop Jenkins service?
  10. What is the default Jenkins home directory?
  11. How do you secure Jenkins with a password?
  12. What are Jenkins nodes (master/agent)?
  13. How do you configure a Jenkins agent?
  14. What is the purpose of Jenkinsfile?
  15. What is Continuous Integration (CI)?
  16. What is Continuous Delivery (CD)?
  17. How do you integrate Jenkins with Git?
  18. How do you schedule a build in Jenkins?
  19. What are build triggers in Jenkins?
  20. Explain the concept of ?upstream? and ?downstream? jobs.
  21. What is the use of Jenkins artifacts?
  22. How do you install a plugin in Jenkins?
  23. How do you disable a Jenkins job temporarily?
  24. What is the difference between Jenkins and other CI/CD tools?
  25. What are common use cases of Jenkins?

📗 Intermediate Level

  1. How do you set up Jenkins on Docker?
  2. What are Jenkins environment variables?
  3. Explain parameterized jobs in Jenkins.
  4. How do you configure Jenkins with GitHub Webhooks?
  5. How do you configure email notifications in Jenkins?
  6. What is the difference between Declarative and Scripted pipelines?
  7. How do you create a pipeline using Jenkinsfile?
  8. Explain the purpose of the Jenkinsfile stages block.
  9. How do you pass parameters between stages in Jenkins pipeline?
  10. What are shared libraries in Jenkins?
  11. How do you manage Jenkins credentials?
  12. Explain Jenkins Blue Ocean.
  13. How do you back up and restore Jenkins?
  14. What is Jenkins Job DSL?
  15. How do you integrate Jenkins with Maven?
  16. How do you integrate Jenkins with Docker?
  17. How do you integrate Jenkins with Kubernetes?
  18. What is Jenkins Multibranch Pipeline?
  19. How do you configure Jenkins to run parallel builds?
  20. How do you configure Jenkins to trigger builds on code commit?
  21. How do you configure Jenkins security (RBAC)?
  22. What is Jenkins Pipeline as Code?
  23. How do you view console output of a Jenkins job?
  24. What is the difference between node and agent in Jenkins pipeline?
  25. How do you archive artifacts in Jenkins?

📕 Advanced Level

  1. How do you set up Jenkins in High Availability mode?
  2. What is Jenkins distributed build architecture?
  3. How do you scale Jenkins for enterprise-level workloads?
  4. What are Jenkins fingerprints?
  5. How do you configure Jenkins with LDAP authentication?
  6. What is the difference between Jenkins scripted pipeline and Groovy scripts?
  7. Explain how Jenkins integrates with Ansible.
  8. How do you implement pipeline stages for Dev, QA, and Prod?
  9. How do you create a Jenkins pipeline to deploy a Docker container?
  10. What are post actions in Jenkins pipeline?
  11. Explain the difference between agent any and agent none in Jenkins pipeline.
  12. How do you use when conditions in Jenkins pipeline?
  13. What are some best practices for Jenkins pipeline design?
  14. How do you monitor Jenkins performance?
  15. How do you secure secrets in Jenkins pipeline?
  16. What is the difference between Jenkins freestyle job and pipeline-as-code approach?
  17. How do you configure Jenkins for artifact promotion?
  18. How do you integrate Jenkins with SonarQube?
  19. How do you integrate Jenkins with Nexus or JFrog Artifactory?
  20. How do you integrate Jenkins with Terraform?
  21. How do you troubleshoot a failed Jenkins job?
  22. How do you configure retry logic in Jenkins pipeline?
  23. What are scripted steps vs declarative steps in Jenkins pipeline?
  24. How do you use Jenkins matrix jobs?
  25. How do you configure Jenkins to run on Kubernetes pods dynamically?

📓 Expert Level

  1. How do you design a scalable Jenkins architecture for 1000+ developers?
  2. How do you optimize Jenkins for thousands of builds per day?
  3. How do you configure Jenkins shared libraries across multiple teams?
  4. Explain the internals of Jenkins pipeline execution engine.
  5. How do you implement GitOps workflows with Jenkins?
  6. How do you configure Jenkins with service mesh (Istio/Linkerd)?
  7. How do you integrate Jenkins with advanced observability tools (Prometheus, Grafana)?
  8. How do you migrate from Jenkins freestyle jobs to pipeline jobs?
  9. How do you implement multi-region CI/CD with Jenkins?
  10. How do you secure Jenkins REST API?
  11. Explain Jenkins integration with HashiCorp Vault.
  12. How do you debug Groovy scripts in Jenkins pipeline?
  13. How do you implement chaos testing in Jenkins pipelines?
  14. How do you optimize Jenkins pipelines for microservices deployments?
  15. How do you integrate Jenkins with cloud providers (AWS, Azure, GCP)?
  16. How do you implement Jenkins pipeline for Infrastructure as Code (IaC)?
  17. How do you handle secrets management in Jenkins with Kubernetes?
  18. How do you perform Canary/Blue-Green deployments with Jenkins?
  19. How do you secure Jenkins against supply chain attacks?
  20. What are some challenges with Jenkins in large organizations?
  21. How do you integrate Jenkins with AI/ML workflows?
  22. What are advanced caching strategies in Jenkins builds?
  23. How do you configure Jenkins to run pipelines with parallel test suites?
  24. How do you migrate from Jenkins to GitHub Actions/GitLab CI/CD?
  25. What is the future of Jenkins in the DevOps ecosystem?

Related Topics


20 October 2020

#Apache_Kafka

#Apache_Kafka

Key Concepts


Topic Subtopics Basic Intermediate Advanced Expert
Kafka Basics Introduction, Features, Use Cases
Kafka Architecture Broker, Zookeeper, Producer, Consumer
Kafka Topics & Partitions Topic Creation, Partitions, Replication
Kafka Producers Producer API, Acknowledgments, Batching
Kafka Consumers Consumer API, Consumer Groups, Offsets
Kafka Brokers Broker Configuration, Cluster Setup
Kafka Zookeeper Role of Zookeeper, Metadata Management
Kafka Configurations Producer Configs, Consumer Configs
Kafka Data Flow Message Lifecycle, Delivery Semantics
Kafka Storage Log Segments, Indexing, Retention Policies
Kafka Delivery Semantics At-most-once, At-least-once, Exactly-once
Kafka Offset Management Commit Strategies, Auto-commit, Manual
Kafka Connect Connectors, Source & Sink, Configuration
Kafka Streams Stream API, Stateless vs Stateful, KTable
Kafka Security SSL, SASL, Authentication, Authorization
Kafka Monitoring Metrics, JMX, Prometheus, Grafana
Kafka Reliability Replication, ISR, Fault Tolerance
Kafka Performance Tuning Producers, Consumers, Brokers
Kafka Transactions Exactly-once Semantics, Idempotent Producer
Kafka Scaling Partition Strategy, Rebalancing, Throughput
Kafka Multi-cluster MirrorMaker, Cluster Replication
Kafka in Cloud AWS MSK, Confluent Cloud, Azure Event Hub
Kafka Integration Spark, Flink, Hadoop, ELK
Kafka Use Cases IoT, Messaging, Event Sourcing, Streaming
Kafka Future KIP Proposals, Ecosystem Growth

Interview question

Basic Level

  1. What is Apache Kafka?
  2. What are the main features of Kafka?
  3. What are the key use cases of Kafka?
  4. Explain Kafka?s publish-subscribe messaging system.
  5. What is a Kafka topic?
  6. What are Kafka partitions?
  7. What is a Kafka producer?
  8. What is a Kafka consumer?
  9. What is a Kafka broker?
  10. What is a Kafka cluster?
  11. What is a Kafka message?
  12. What is an offset in Kafka?
  13. What is a consumer group in Kafka?
  14. What is the difference between a Kafka queue and a topic?
  15. How do producers send data to Kafka?
  16. How do consumers read data from Kafka?
  17. What is Zookeeper in Kafka (pre-KRaft)?
  18. What is Kafka KRaft mode?
  19. What is the difference between Zookeeper and KRaft?
  20. What is Kafka retention policy?
  21. How do you configure message retention in Kafka?
  22. What are Kafka replicas?
  23. What is the difference between leader and follower replicas?
  24. What happens if a broker fails in Kafka?
  25. How do you create and list Kafka topics?

Intermediate Level

  1. How does Kafka guarantee message ordering?
  2. What is log compaction in Kafka?
  3. What is the difference between log compaction and log retention?
  4. How do you configure acknowledgments (acks) in Kafka?
  5. What is the difference between acks=0, acks=1, and acks=all?
  6. What is idempotent producer in Kafka?
  7. How does Kafka ensure message durability?
  8. What are Kafka consumer offsets?
  9. How does Kafka track consumer offsets?
  10. What is the difference between earliest and latest offset reset?
  11. How do you commit offsets in Kafka?
  12. What is the difference between automatic and manual offset commit?
  13. What are Kafka serializers and deserializers?
  14. What is a Kafka partition key?
  15. How do you achieve message key-based ordering in Kafka?
  16. What is Kafka Streams?
  17. What is KSQL (ksqlDB)?
  18. What are Kafka connectors?
  19. What is Kafka Connect?
  20. What are the different modes of Kafka Connect (standalone vs distributed)?
  21. How do you scale Kafka consumers?
  22. What is consumer rebalancing in Kafka?
  23. What are rebalancing strategies in Kafka?
  24. What is the difference between at-most-once, at-least-once, and exactly-once delivery semantics?
  25. How does Kafka achieve exactly-once semantics?

Advanced Level

  1. Explain Kafka?s architecture in detail.
  2. How does Kafka handle high throughput?
  3. What is the role of page cache in Kafka performance?
  4. How does Kafka achieve fault tolerance?
  5. What is ISR (In-Sync Replicas) in Kafka?
  6. How do leader elections work in Kafka?
  7. What is unclean leader election?
  8. What is the difference between min.insync.replicas and replication factor?
  9. What is rack awareness in Kafka?
  10. How do you monitor Kafka performance?
  11. What are key Kafka metrics to monitor?
  12. What is Kafka Controller?
  13. What happens when the Kafka controller fails?
  14. How does Kafka handle backpressure?
  15. What is a dead letter queue (DLQ) in Kafka?
  16. How do you implement retries in Kafka?
  17. What is Kafka?s compaction log cleaner thread?
  18. What is throttling in Kafka?
  19. How do you secure Kafka with SSL?
  20. How do you secure Kafka with SASL?
  21. What is the difference between SASL/PLAIN, SASL/SCRAM, and SASL/GSSAPI?
  22. How do you enable ACLs in Kafka?
  23. How do you handle schema evolution in Kafka?
  24. What is Confluent Schema Registry?
  25. What is the role of Avro, Protobuf, and JSON schemas in Kafka?

Expert Level

  1. What is Kafka KRaft mode and how does it replace Zookeeper?
  2. Explain Kafka?s Raft protocol.
  3. What are the benefits of KRaft over Zookeeper?
  4. How do you migrate from Zookeeper-based Kafka to KRaft mode?
  5. How do you tune Kafka for high throughput?
  6. How do you tune Kafka for low latency?
  7. How do you size partitions in Kafka?
  8. What are the trade-offs between fewer vs more partitions?
  9. What is Kafka tiered storage?
  10. How do you implement geo-replication in Kafka?
  11. What is MirrorMaker in Kafka?
  12. What is MirrorMaker 2.0 and how does it work?
  13. What are Kafka quotas? How do you use them?
  14. How do you implement multi-tenancy in Kafka?
  15. What are Kafka transactions?
  16. How does Kafka implement exactly-once processing with transactions?
  17. What is the difference between Kafka Streams and Flink?
  18. How does Kafka Streams handle stateful operations?
  19. What is state store in Kafka Streams?
  20. How do you achieve high availability in Kafka Streams?
  21. Compare Kafka with RabbitMQ, ActiveMQ, and Pulsar.
  22. Compare Kafka with Azure Event Hubs and AWS Kinesis.
  23. What are common Kafka anti-patterns?
  24. What are real-world best practices for running Kafka in production?
  25. How do you design a large-scale Kafka deployment for millions of messages per second?


Related Topics


   Kafka_Introduction