Product Engineering
52 resultsDatabase Schema Migration Strategies
Expand-contract pattern, zero-downtime migrations, and tooling.
Secure Coding — OWASP Top 10 for Backend Engineers
Injection, broken auth, XSS, IDOR, and how to prevent each.
Progressive Delivery — Feature Flags, Canary, and Dark Launching
Techniques for releasing software confidently at any scale.
JWT Authentication — Implementation and Security Patterns
Access tokens, refresh tokens, rotation, revocation, and common mistakes.
REST API design principles we follow
Versioning, error formats, pagination, and auth patterns used across all Intersysop-built APIs.
Multi-Tenancy Patterns — Database-per-Tenant, Schema-per-Tenant, and Row-Level
Tradeoffs for SaaS data isolation, compliance, and operational complexity.
SQL Query Optimisation — Indexes, Execution Plans, and N+1
Practical techniques for making slow queries fast.
Resilience Patterns — Circuit Breaker, Retry, Bulkhead, and Timeout
Prevent cascading failures with proven resilience patterns.
REST API Versioning Strategies
URL path, header, and query-param versioning compared with real-world tradeoffs.
Observability — Logs, Metrics, and Traces
Implementing the three pillars with OpenTelemetry and making them actionable.
CI/CD Pipeline Design — From Commit to Production
Stages, gates, deployment strategies, and keeping pipelines fast.
HTTP Caching Strategies for APIs and Web Applications
Cache-Control headers, ETags, CDN caching, and cache invalidation.
Extracting Microservices from a Monolith
The strangler fig pattern, identifying seams, and avoiding the distributed monolith.
WebSockets — Building Real-Time Features
Connection lifecycle, heartbeats, reconnection logic, and scaling with Redis pub/sub.
Logging Best Practices for Production Services
Structured logging, log levels, correlation IDs, and log aggregation.
Kubernetes Deployment Patterns for Production Services
Deployments, Services, Ingress, HPA, and resource management.
The Twelve-Factor App — Principles for Modern Services
How the twelve factors apply to real production services today.
GraphQL vs REST — When to Use Each
Comparing query flexibility, over-fetching, tooling, and operational complexity.
DORA Metrics — Measuring Engineering Delivery Performance
Deployment frequency, lead time, MTTR, and change failure rate in practice.
Distributed Tracing — Propagating Context Across Services
Trace context propagation, sampling strategies, and analysing traces.
Async/Await Patterns and Common Pitfalls
Concurrency, parallelism, error handling, and avoiding common async bugs.
API Error Handling — Consistent Error Responses
Error format standards, HTTP status code usage, and client-friendly error design.
Semantic Versioning — MAJOR.MINOR.PATCH in Practice
When to bump each version number and how to communicate breaking changes.
Designing a Reliable Webhook System
Delivery guarantees, signature verification, retry logic, and consumer best practices.
API Documentation Best Practices
What makes documentation useful, tooling, and keeping docs accurate.
Background Job Queue Design
Idempotency, retries, dead letter queues, and job observability.
Load Testing with k6
Script a realistic load test, interpret results, and find bottlenecks before they find users.
Database Connection Pooling — Why It Matters and How to Configure It
Pool sizing, connection lifetime, and debugging pool exhaustion.
Dependency Management and Supply Chain Security
Lock files, vulnerability scanning, SBOM, and keeping dependencies up to date.
Serverless Architecture — When Functions Work and When They Don't
Cold starts, event-driven patterns, cost model, and the right use cases.
Idiomatic REST API Design Patterns
Naming conventions, filtering, sorting, sparse fieldsets, and HATEOAS considerations.
Implementing Rate Limiting in APIs
Token bucket, sliding window, fixed window — algorithms and implementation patterns.
Microservices Communication — Sync vs Async Patterns
REST, gRPC, message queues, and choosing the right pattern for each interaction.
OAuth 2.0 and OIDC — Implementing Secure Third-Party Auth
Authorization code flow, PKCE, scopes, and integrating with identity providers.
Designing and Publishing API Client SDKs
Auto-generation vs handwritten, retry logic, versioning, and developer experience.
API Pagination — Cursor, Offset, and Keyset Patterns
When each method works, performance tradeoffs, and implementation details.
Implementing Search — From Basic SQL to Elasticsearch
Full-text search progression from LIKE queries to dedicated search engines.
API Gateway — Responsibilities and Implementation Patterns
Authentication, rate limiting, routing, request aggregation, and when not to use a gateway.
OpenAPI Spec-First API Development
Write the contract before writing code — benefits, tooling, and workflow.
API Idempotency — Safe Retries for Mutations
Idempotency keys, implementation, and which HTTP methods are idempotent by definition.
Feature Flags — Safe Deployment and Gradual Rollout
Types of flags, implementation patterns, and avoiding flag sprawl.
API Testing Strategy — Unit, Integration, Contract, and E2E
Building a test pyramid that catches real bugs without slowing delivery.
Docker Containerisation Best Practices
Writing efficient Dockerfiles, multi-stage builds, security hardening, and image size reduction.
Database Connection Patterns in PHP
PDO, prepared statements, connection pooling, and transaction management.
Our observability stack for production services
Logs, metrics, traces — how we instrument every service we ship.
Message Queue Patterns — SQS, RabbitMQ, and Dead Letter Queues
Fan-out, work queues, priority queues, and poison message handling.
Health Check Endpoints — Readiness, Liveness, and Startup
Implement correct health endpoints so orchestrators route traffic and restart containers appropriately.
CDN and Edge Caching Strategy
Origin offload, cache key design, purging, and choosing a CDN.
Event Sourcing and CQRS — Practical Implementation
Event store design, projection rebuilding, and operational realities.
gRPC Service Design — Protocol Buffers and Production Patterns
Proto file design, streaming, deadlines, interceptors, and error handling.
Service Mesh — Istio and Linkerd for Microservices
mTLS, traffic management, observability, and the operational cost of a service mesh.
Container Registry Management and Image Lifecycle
Tagging conventions, vulnerability scanning, retention policies, and registry options.