Application Architect
Posted Updated
Description
Responsibilities:
- Architect and Build High-Performance REST APIs: Design scalable, stateless APIs with asynchronous and event-driven patterns to support high-volume, low-latency interactions between diverse network participants.
- Microservices and Application-to-Application Communication: Design and implement asynchronous, decoupled services communicating through message queues, event buses, or streaming backbones (Kafka, RabbitMQ, or Pulsar).
- System Design for Scale: Architect for massive concurrency, large payload handling, pagination, and version-safe message passing using Protobuf, Avro, or JSON serialization. Ensure predictable throughput even at hundreds of thousands of RPS.
- Orchestration and Infrastructure Integration: Deploy and operate services on Kubernetes or ECS, with containerization best practices using Docker. Apply CI/CD automation, observability, and autoscaling strategies.
- Storage and Caching Architecture: Deep understanding of OLTP databases (PostgreSQL, Aurora, MySQL), distributed caches (Redis, Memcached), and key-value stores (RocksDB, DynamoDB). Ability to select storage strategies for latency, durability, and cost trade-offs.
- Programming and Scripting Mastery: Hands-on expertise with Go or Rust for compiled microservices and Python for orchestration, cron automation, and glue code. Strong grounding in functional programming and immutability patterns used for event-driven, idempotent systems.
- Benchmarking and Performance Optimization: Design benchmarking frameworks using Locust, k6 or JMeter to simulate concurrent load. Analyze heap and memory dumps; use profilers to optimize GC, I/O, and CPU utilization.
- Software Design Patterns and Principles: Build systems that are resilient, observable, and self-scaling.
- Testing and Validation Frameworks: Establish unit, integration, and black-box test frameworks with automated validation of asynchronous flows, schema conformance, and payload correctness.
- Versioning and Contract Management: Define strategies for API evolution, backward compatibility, and schema versioning for 50 MB+ payloads. Enforce pagination, partial updates, and modular validation strategies.
Requirements:
- 8+ years of experience designing and delivering distributed, asynchronous systems.
- Deep expertise in REST, gRPC, message-driven, and event-driven architectures.
- Proven experience with Go / Rust / Python and microservice deployment on Kubernetes / ECS.
- Strong hands-on experience with PostgreSQL / Aurora, Redis, DynamoDB, and other low-latency storage systems.
- Familiar with Locust / k6 / JMeter for benchmarking and Prometheus / Grafana / OpenTelemetry for observability.
- Strong knowledge of DevOps, CI/CD, Docker, and Terraform / IaC.
- Excellent understanding of functional, reactive, and concurrent programming.
Skills
- API
- Aurora
- Automation
- Avro
- CI/CD
- Containerization
- Design Patterns
- DevOps
- Docker
- DynamoDB
- ECS
- Event Driven Architecture
- Grafana
- gRPC
- Infrastructure as Code
- JMeter
- JSON
- k6
- Kafka
- Kubernetes
- Memcached
- Microservices
- MySQL
- Observability
- OpenTelemetry
- PostgreSQL
- Prometheus
- Protobuf
- Pulsar
- Python
- RabbitMQ
- Redis
- REST
- Rust
- Terraform