About the Company
Novaex is building an AI operating system for commodities, bringing together market data, commodity pricing, position management, hedging, and AI-driven decision intelligence into a single platform for commodity businesses.
About the Role
We are looking for a Senior Backend Engineer to build and operate reliable backend services that power our product. This is a strong individual contributor role for an engineer who can make sound technical decisions, work independently, and take responsibility for the quality and production health of the systems they build.
Responsibilities
- Design, develop, test, deploy, and maintain reliable backend services and APIs using Go and other appropriate technologies.
- Build and maintain services using REST/gRPC APIs, PostgreSQL, Redis, messaging systems, and asynchronous processing.
- Apply practical distributed-systems concepts, including concurrency, retries, timeouts, idempotency, backpressure, failure handling, and event-driven communication.
- Monitor and improve the production health, reliability, performance, and maintainability of backend services.
- Implement and maintain application-level metrics, logging, tracing, dashboards, and alerts.
- Investigate production issues, participate in incident resolution, perform root-cause analysis, and implement lasting fixes.
- Work with containerized applications and Kubernetes, including deployments, services, configuration, health checks, resource limits, and application logs.
- Write clean, readable, well-tested production code, including appropriate unit and integration tests.
- Participate in code reviews and technical design discussions.
- Document important technical decisions and improve technical debt incrementally.
- Collaborate with infrastructure and platform engineers to ensure services are deployed, monitored, and operated effectively.
- Make practical technical decisions that improve reliability without introducing unnecessary complexity.
Qualifications
- 4–6 years of professional software/backend engineering experience.
- Strong experience building and maintaining production backend applications.
- Strong understanding of backend engineering fundamentals.
- Experience with Go or another strongly typed backend language.
- Experience building APIs and backend services.
- Experience working with relational databases, preferably PostgreSQL.
- Practical experience with caching and/or messaging systems.
- Experience working with applications deployed in containers, Kubernetes, or similar environments.
- Experience working with application monitoring and observability.
- Ability to debug and resolve production issues independently.
- Good understanding of concurrency and asynchronous processing.
- Strong testing and code-quality practices.
- Ability to independently drive features from development through production.
Required Skills
- Good understanding of idiomatic Go.
- Experience with goroutines, channels, contexts, interfaces, error handling, and testing.
- Ability to write production-grade Go services.
- Understanding of Go profiling and performance optimization is a plus.
- Go experience is preferred, but strong backend engineers from other languages with good distributed-systems fundamentals should also be considered.
Preferred Skills
- Kafka or similar messaging systems.
- Redis.
- PostgreSQL / TimescaleDB.
- Kubernetes.
- AWS or GCP.
- Prometheus / Grafana or similar monitoring systems.
- Distributed tracing.
- Experience with WebSockets or real-time applications.
- Experience working with high-volume backend applications.
- Experience with performance profiling and load testing.
Equal Opportunity Statement
We are committed to diversity and inclusivity.