Server-side Engineer
Posted Updated
Description
Job Summary (Server-side Engineer)
- Deep understanding of server-side engineering, including runtime behavior (e.g., JVM internals, garbage collection, threading, coroutines).
- Strong grasp of networking fundamentals, HTTP protocol, connection pooling, and data serialization.
- Solid knowledge of database internals such as indexing, locking, query plans, and transaction isolation.
- Ability to make and justify architectural decisions (monolith vs. microservices, REST vs. GraphQL, synchronous vs. asynchronous communication).
- Skilled in evaluating trade-offs related to consistency, latency, payload sizes, and developer experience for data layer design.
- Experience selecting and implementing appropriate database technologies (SQL vs. NoSQL) based on application needs.
- Focused on enterprise-grade reliability, including defensive programming, input validation, data masking, and security best practices.
- Ensures system resilience and fault containment, particularly in financial or mission-critical platforms.
- Practices clean code principles, separation of concerns, automated testing, and maintains readable abstractions to aid team productivity.
- Proficient in building and operating server-side applications and distributed microservices in production environments.
- Experienced with designing and consuming RESTful APIs and event-driven architectures (especially with Apache Kafka).
- Hands-on work with both relational (e.g., PostgreSQL, MySQL, Oracle) and NoSQL (e.g., MongoDB, Cassandra, DynamoDB) databases.
- Familiar with automated testing (unit, integration, regression) and CI/CD toolchains.
- Strong debugging, root-cause analysis, and performance optimization skills.
- Preferred technical stack includes Java/Kotlin (or similar), REST, GraphQL, RAML, OpenAPI, Gradle/Maven, Docker, Kubernetes, and Jenkins/GitLab CI.
- Comfortable modernizing legacy codebases and migrating to modern service architectures.
- Relevant technologies encountered: Kotlin, Gradle, REST, GraphQL (GQL), RAML.
- Deep understanding of server-side engineering, including runtime behavior (e.g., JVM internals, garbage collection, threading, coroutines).
- Strong grasp of networking fundamentals, HTTP protocol, connection pooling, and data serialization.
- Solid knowledge of database internals such as indexing, locking, query plans, and transaction isolation.
- Ability to make and justify architectural decisions (monolith vs. microservices, REST vs. GraphQL, synchronous vs. asynchronous communication).
- Skilled in evaluating trade-offs related to consistency, latency, payload sizes, and developer experience for data layer design.
- Experience selecting and implementing appropriate database technologies (SQL vs. NoSQL) based on application needs.
- Focused on enterprise-grade reliability, including defensive programming, input validation, data masking, and security best practices.
- Ensures system resilience and fault containment, particularly in financial or mission-critical platforms.
- Practices clean code principles, separation of concerns, automated testing, and maintains readable abstractions to aid team productivity.
- Proficient in building and operating server-side applications and distributed microservices in production environments.
- Experienced with designing and consuming RESTful APIs and event-driven architectures (especially with Apache Kafka).
- Hands-on work with both relational (e.g., PostgreSQL, MySQL, Oracle) and NoSQL (e.g., MongoDB, Cassandra, DynamoDB) databases.
- Familiar with automated testing (unit, integration, regression) and CI/CD toolchains.
- Strong debugging, root-cause analysis, and performance optimization skills.
- Preferred technical stack includes Java/Kotlin (or similar), REST, GraphQL, RAML, OpenAPI, Gradle/Maven, Docker, Kubernetes, and Jenkins/GitLab CI.
- Comfortable modernizing legacy codebases and migrating to modern service architectures.
- Relevant technologies encountered: Kotlin, Gradle, REST, GraphQL (GQL), RAML.