Principal Engineer

2025-06-13

📚 Table of Contents

🔧 Back-end

🧱 Microservices Architecture

  • Principles: Domain-driven design (DDD), loose coupling, high cohesion, bounded contexts.
  • Service communication: REST vs. gRPC, Kafka (event-driven), synchronous vs. asynchronous flows.
  • Common patterns: API Gateway, Circuit Breaker, Saga/Orchestration, CQRS, Service Registry (e.g., Eureka), Config Server.
  • Deployment: Independent service deployments, blue/green or canary releases.

☕️ Java + Spring Boot

  • Core knowledge:
    • Spring Boot Autoconfiguration, Profiles, Actuators
    • Dependency injection with Spring Framework
    • Exception handling, validation, and AOP
  • Advanced topics:
    • Spring Cloud: Config, Discovery, Gateway
    • Reactive programming (WebFlux) – especially with Kafka or streaming
    • Observability with Spring Boot: Micrometer, Prometheus, Zipkin

⚙️ Apache Kafka

  • Concepts:
    • Topics, partitions, consumer groups, offset management
    • At-least-once vs. exactly-once semantics
  • Use Cases: Event sourcing, change data capture (CDC), stream processing
  • Tools: Kafka Streams, Kafka Connect, schema registry (e.g., Avro with Confluent)

🛢 PostgreSQL

  • Schema design: normalization, indexing, constraints, partitioning
  • Performance: query optimization (EXPLAIN ANALYZE), caching strategies, connection pooling (HikariCP)
  • Advanced: JSONB support, full-text search, triggers, stored procedures
  • Scaling: Replication, sharding, and failover

🖼 Front-end

⚛️ React

  • Architecture: Micro frontends (MFEs), independent deployability, cross-app communication
  • Patterns:
    • Component-driven design (Storybook, Atomic Design)
    • State management (Redux, Zustand, or React Query)
    • Code splitting, lazy loading, and performance optimization
  • Testing: Unit (Jest), integration (React Testing Library), E2E (Playwright/Cypress)

🔗 GraphQL

  • Design: Schema-first vs. code-first, queries, mutations, subscriptions
  • Tooling: Apollo Client/Server, caching, batching
  • Security: Depth limiting, query complexity analysis
  • Performance: N+1 problem and dataloader pattern, persisted queries

☁️ 3. DevOps and Infrastructure

🔄 Harness CI/CD

  • Pipelines: Understand workflows, GitOps, triggers, rollback strategies
  • Templates and Reuse: Use of YAML templates, stages, and approval gates
  • Governance: RBAC, policy enforcement, secrets management
  • Integration: With artifact repositories (e.g., Artifactory), test tools, monitoring

☁️ AWS

  • Core services:
    • Compute: EC2, ECS/EKS, Lambda (for serverless microservices)
    • Networking: VPC, ALB/NLB, Route53, PrivateLink, NAT Gateways
    • Storage: S3, EBS, EFS
    • Databases: RDS (PostgreSQL), DynamoDB, ElastiCache
  • Security: IAM roles/policies, security groups, KMS, secrets manager
  • DevOps on AWS: CloudWatch, CloudTrail, X-Ray, Systems Manager
  • IaC: Terraform vs. AWS CDK, CloudFormation

Principal Engineer

Date: 2025-06-13

Resume

Date: 2025-05-01