Software Engineer
Build and operate TypeScript backend microservices for Kong’s billing platform, covering subscriptions, entitlements, usage metering, provisioning, and payment integrations. The role requires 3+ years of backend engineering experience and expertise in TypeScript, Node.js, relational databases, distributed systems, and Kubernetes.
About the job
Responsibilities
- Develop and maintain TypeScript microservices supporting billing lifecycle management for self-serve and enterprise plans.
- Build integrations with payment processing and usage metering platforms for invoice generation and consumption tracking.
- Implement event-driven features using Kafka or similar platforms for billing state transitions, entitlement updates, and provisioning triggers.
- Contribute to entitlement enforcement and provisioning workflows connecting sales contract events to live organization configurations.
- Collaborate with senior engineers, revenue operations, and finance stakeholders to deliver accurate, auditable billing behavior.
- Write clean, maintainable, well-tested code with unit and integration tests for financial workflows.
- Participate in code reviews, design discussions, on-call rotation, and service-health monitoring.
- Improve operational reliability and debug data consistency issues across service boundaries.
Requirements
- 3+ years of professional software engineering experience building backend services.
- Strong TypeScript and Node.js proficiency; experience with NestJS or a similar framework.
- Experience with relational databases such as PostgreSQL, including data modeling and query design.
- Experience building or consuming REST APIs and integrating third-party services.
- Understanding of event-driven architecture and message-based systems such as Kafka or SQS.
- Familiarity with distributed systems concepts including eventual consistency, idempotency, and failure handling.
- Experience with multi-tenant SaaS systems and tenant data isolation.
- Experience deploying and operating services on Kubernetes in a cloud environment.
- Strong computer science fundamentals in data structures, algorithms, and system design.
- Experience with CI/CD pipelines and tools such as GitHub Actions or Jenkins.
- Experience with code repositories and collaboration tools such as GitHub, JIRA, or Confluence.
- Strong debugging skills and ability to trace data consistency issues across service boundaries.
Nice-to-haves
- Experience with billing or payment platforms such as Stripe, Chargebee, or Zuora.
- Experience with usage metering systems such as Metronome or Lago.
- Familiarity with CRM-driven provisioning workflows or Salesforce events.
- Exposure to Snowflake or other data warehouses.
- Experience with ClickHouse, Druid, or similar OLAP systems.
- Knowledge of subscription lifecycle concepts including trials, prorations, renewals, and credits.
- Experience building internal operational or support tooling.
- Familiarity with AWS services including EKS, RDS, SQS, or S3.
- Knowledge of Terraform or Pulumi.
- Experience with observability tools such as Datadog, Prometheus, Grafana, or OpenTelemetry.
- Full-stack experience building lightweight internal user interfaces.
- Experience with Docker, Kafka, CDC, or Flink.
Skills
TypeScript, Node.js, Nestjs, Postgres, REST APIs, Kafka, Kubernetes, CI/CD, GitHub Actions, Jenkins, AWS, Terraform, Docker, Snowflake, OpenTelemetry
Similar jobs
Backend Engineering jobsBuild and operate production backend features, APIs, integrations, and services for a large-scale DevSecOps platform. The role requires professional backend development experience, strong database and testing fundamentals, independent feature ownership, and clear asynchronous communication.
Build and maintain Ruby on Rails backend systems for GitLab’s vulnerability management workflows, including security dashboards, reports, and ingestion pipelines. The role requires backend application experience, PostgreSQL knowledge, technical problem-solving, and effective collaboration in a distributed team.
Build and maintain the Python-based agentic runtime powering GitLab Duo Chat, integrate it with GitLab’s Rails monolith and GraphQL APIs, and improve reliability, security, and performance. The role requires production Python experience, API development skills, and familiarity with agent orchestration or LLM systems.
Build and improve MongoDB’s low-level networking and observability systems for a distributed database. The role requires production C++ experience, distributed-systems expertise, strong computer science fundamentals, and the ability to lead projects collaboratively from design through delivery.
Backend software engineer responsible for building and maintaining distributed claims technology systems, owning features through deployment, and collaborating with stakeholders and insurance partners. Requires at least three years of professional experience and expertise in object-oriented programming, distributed systems, and databases.