Fullstack Developer Interview & Technical Review Flashcards

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/47

flashcard set

Earn XP

Description and Tags

Vocabulary flashcards covering technical concepts, interview strategy, Java, Spring Boot, Angular, REST, testing, Kotlin, and DevOps topics from the compeople Fullstack Developer interview preparation transcript.

Last updated 6:18 AM on 10/4/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

48 Terms

1
New cards

compeople

Frankfurt-based IT consulting and software development company founded in 1999, specializing in Cloud, Automation, Data & AI, and Experience.

2
New cards

DVAG Salesforce Solution

A tailored solution developed by compeople for around 18,000 consultants at Deutsche Vermögensberatung (DVAG).

3
New cards

Agentic SDLC Blueprint & Agentic Business Canvas

Key AI initiatives active at compeople in 2026 focusing on AI integration within the software development lifecycle and business processes.

4
New cards

STAR Method

A structured technique used to answer behavioral interview questions by describing Situation, Task, Action, and Result (applied during system transition at B. Braun).

5
New cards

LLM Quality Assurance for Data Extraction

Methods to ensure reliable output from Large Language Models, including structured JSON Schema outputs, code-level validation, test datasets with target values, prompt versioning, and human review for critical values.

6
New cards

AI Development Risks & Mitigation

Risks include Prompt Injection, data leaks, insecure code, and hallucinations. Mitigation relies on automated tests, code reviews, restricted agent permissions, and human approval for critical steps.

7
New cards

Java == vs. equals()

The '==' operator compares object references (checking if both point to the exact same object in memory), whereas 'equals()' compares the actual logical content when overridden.

8
New cards

Java equals() and hashCode() Contract

Objects that are equal according to equals() must return identical hashCode() values; violating this breaks hash-based collections like HashMap and HashSet.

9
New cards

Java Record

Introduced in Java 16 as a compact, immutable data class that automatically generates private final fields, constructors, getters, equals(), hashCode(), and toString(). Ideal for DTOs.

10
New cards

Checked vs. Unchecked Exceptions

Checked exceptions subclass Exception (excluding RuntimeException) and must be handled or declared. Unchecked exceptions subclass RuntimeException. By default, @Transactional rolls back only on unchecked exceptions.

11
New cards

Java Optional Usage

Intended specifically as a return type to signal that a value can be missing. It should not be used for class fields or method parameters.

12
New cards

orElse() vs. orElseGet()

In Java Optional, orElse() evaluates its default argument immediately regardless of value presence, whereas orElseGet() accepts a Supplier that evaluates lazily only when empty.

13
New cards

List vs. Set vs. Map

List is an ordered collection allowing duplicates; Set prevents duplicate elements; Map stores key-value pairs with unique keys.

14
New cards

ArrayList vs. LinkedList

ArrayList provides fast O(1) indexed random access and is almost always preferred in practice, whereas LinkedList is rarely optimal for general usage.

15
New cards

Java Streams: map vs. flatMap

map transforms each element into a single element. flatMap transforms each element into a stream and flattens all resulting streams into a single stream.

16
New cards

Stream Intermediate vs. Terminal Operations

Intermediate operations (e.g., filter, map) are lazy and build a pipeline; terminal operations (e.g., collect, forEach, count) trigger execution of the stream pipeline.

17
New cards

Immutability

Object state that cannot be modified after creation, achieved via final fields, no setters, and defensive copies. Benefits include thread safety without synchronization and simpler testing.

18
New cards

Java Stack vs. Heap

Stack memory is thread-specific and stores local variables and active method calls. Heap memory is shared across all threads and holds instantiated objects cleaned by the Garbage Collector.

19
New cards

Race Condition

Occurs when multiple threads concurrently read/write shared mutable state, leading to nondeterministic behavior. Avoided using immutable objects, synchronized, Atomic classes, or ConcurrentHashMap.

20
New cards

Virtual Threads

Lightweight JVM-managed threads introduced in Java 21 for high-throughput blocking I/O tasks, enabled in Spring Boot 3.2+ via spring.threads.virtual.enabled=true.

21
New cards

Interface vs. Abstract Class

An Interface defines a contract supporting multiple inheritance and default methods without instance state. An Abstract Class shares instance state and common code but allows only single inheritance.

22
New cards

SOLID Principles

Five software design principles: Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, and Dependency Inversion (implemented via Spring Dependency Injection).

23
New cards

Spring Constructor Injection

The preferred Dependency Injection approach that allows final fields, clearly exposes required dependencies, and enables easy testing without invoking a Spring context.

24
New cards

Spring Bean Scopes

Defines bean lifecycle: singleton (default, one instance per container), prototype (new instance per request), request, and session. Singleton beans should remain stateless.

25
New cards

Spring Stereotype Annotations

Specialized @Component annotations: @Service highlights service-layer logic, @Repository adds persistence exception translation, and @RestController combines @Controller and @ResponseBody.

26
New cards

Spring @Transactional

Creates a proxy that opens a transaction before method execution, commits on success, and triggers a rollback upon RuntimeException or Error (checked exceptions require rollbackFor).

27
New cards

Self-Invocation in Spring

Calling a method on 'this' inside the same bean bypasses the Spring proxy, rendering proxy-based annotations like @Transactional, @Cacheable, and @Async ineffective.

28
New cards

Propagation REQUIRED vs. REQUIRES_NEW

REQUIRED (default) joins an existing transaction or starts one if none exists. REQUIRES_NEW always suspends the outer transaction and initiates an independent new transaction.

29
New cards

@Transactional(readOnly = true)

An optimization hint allowing persistence providers like Hibernate to skip dirty-checking checks on read-only queries.

30
New cards

N+1 Query Problem

Performance issue where fetching 1 query for an entity list triggers N additional queries for lazy relationships. Solved using JOIN FETCH, @EntityGraph, or DTO projections.

31
New cards

LazyInitializationException

Exception thrown by Hibernate when code accesses a lazily-loaded relationship outside an active session or transaction boundary.

32
New cards

Spring @Cacheable

Caches method results based on parameter combinations (activated by @EnableCaching); removed via @CacheEvict. Runs via AOP proxy (subject to self-invocation limits).

33
New cards

Global REST Error Handling in Spring

Uses @RestControllerAdvice with @ExceptionHandler methods to return consistent error formats like RFC 9457 ProblemDetail (standard in Spring 6).

34
New cards

Spring DTO Validation

Uses Bean Validation annotations (@NotNull, @Size, @Email) on DTO fields and @Valid on Controller parameters, producing HTTP 400 Bad Request on failure.

35
New cards

Spring Test Annotations (@SpringBootTest vs @WebMvcTest vs @DataJpaTest)

@SpringBootTest loads the entire application context. @WebMvcTest isolates the web layer (mocking services via @MockitoBean / @MockBean). @DataJpaTest tests only JPA persistence with a test database.

36
New cards

Testcontainers

A testing library that provisions real database instances (e.g., PostgreSQL) inside Docker containers during integration test runs.

37
New cards

Spring Boot Actuator

Provides production-ready management endpoints (e.g., /actuator/health and metrics) used for application monitoring and health checks in Kubernetes or Azure.

38
New cards

PUT vs. PATCH vs. POST and Idempotency

PUT replaces resources entirely, PATCH partially modifies, and POST creates new resources. GET, PUT, and DELETE are idempotent (repeated requests yield identical server state); POST is non-idempotent.

39
New cards

Angular OnPush Change Detection

Optimization strategy that skips component subtree checks unless Input references change, events emit inside the component, an async pipe receives a value, or Signals change.

40
New cards

Angular Signals

Reactive state primitive introduced in Angular 16 using signal(), computed(), and effect(), enabling fine-grained DOM updates without full component-tree checks.

41
New cards

RxJS switchMap vs. mergeMap vs. concatMap

switchMap cancels prior inner subscriptions (ideal for search inputs); mergeMap handles subscriptions concurrently; concatMap executes inner observables sequentially.

42
New cards

Angular Standalone Components

Components created without NgModules that list their own dependencies directly in their imports array. Recommended since Angular 17 and default in Angular 19.

43
New cards

TypeScript any vs. unknown

any disables static type checking. unknown forces explicit type checks or assertions before invoking methods or accessing properties.

44
New cards

TypeScript interface vs. type

interface is open and extensible, ideal for defining object shapes; type supports union types, primitive aliases, and complex tuple combinations.

45
New cards

Test Pyramid

Testing strategy composed of a broad base of fast Unit Tests, a moderate layer of Integration Tests, and a thin top layer of End-to-End Tests.

46
New cards

Testing Library Core Principle

Tests should interact with software in the same way users do by selecting UI elements via role, label, or text rather than component internal implementation details.

47
New cards

Kotlin Operators: ?. , ?: , !!

?. (Safe Call) evaluates to null without throwing NPE; ?: (Elvis Operator) returns a fallback value when null; !! forces non-null conversion, raising a NullPointerException if null.

48
New cards

Spring Boot Dockerfile Best Practices

Use a slim JRE base image, implement multi-stage builds, execute as a non-root user, pass configs via environment variables, and configure health checks.