Sr Software Engineer (Costa Rica - Remote)

Remote in San Antonio, Provincia de Alajuela • Posted 10 hours ago • Updated 10 hours ago
Full Time
On-site
USD $45.00 - 55.00 per hour
Fitment

Dice Job Match Score™

🔢 Crunching numbers...

Job Details

Skills

  • Payments
  • Pricing
  • Loyalty Program
  • Acquisition
  • TypeScript
  • Node.js
  • PostgreSQL
  • Object-relational Mapping
  • Amazon Web Services
  • Amazon SQS
  • FIFO
  • Authentication
  • Authorization
  • Testing
  • Workflow
  • Terraform
  • Kubernetes
  • Debugging
  • GitHub
  • Continuous Delivery
  • SDK
  • GraphQL
  • SAP
  • Data Integrity
  • Continuous Integration
  • Hardening
  • Performance Tuning
  • Soft Skills
  • Writing
  • RFC
  • Migration
  • Legacy Systems
  • API
  • Mentorship

Summary

Job title: Sr Software Engineer

Team: Customer Domain Engineering

Pay Rate: $45-55 USD/hr

Location: Costa Rica (remote)

What the team does and why it matters

The team owns the source of truth for provider organizations, locations, users and permissions. This is the business-to-business side of All?, the loyalty platform used by tens of thousands of aesthetics practices. It isn't payments or loyalty itself, but those depend on it: checkout and payments, pricing and loyalty programs, feature enablement and partner integrations all rely on this platform to know who a practice is, what it can access, and who can act for it. Bad data or downtime here spreads straight into revenue-facing flows. That's why the team also carries the high-stakes work, such as moving accounts onto AbbVie's SAP after the acquisition.

Technical Skills Required:

Must have

? TypeScript and Node.js at production depth. NestJS for the domain services.

? PostgreSQL in depth: schema design, migrations, indexing, and reading query plans (EXPLAIN ANALYZE). The ORM is TypeORM.

? AWS serverless and event-driven design: Lambda, SQS (including FIFO queues and dead-letter queues), SNS, Parameter Store.

? API design: REST/OpenAPI with generated typed SDKs for consumers, plus GraphQL for the older services.

? Authentication and authorization: role-based access, Okta, service-to-service auth through central IAM, and token-based partner access (DPoP).

? Testing discipline: Jest with Testcontainers-backed integration tests.

Strong plus

? Temporal, or another durable-workflow engine.

? Terraform. Enough Kubernetes to deploy and debug: Kustomize overlays, IAM roles for service accounts (IRSA).

? Datadog for observability. GitHub Actions and ArgoCD for CI/CD.

What the role involves day to day

? Owning the user, role and organization domains. Building and evolving the APIs and SDK contracts that other teams consume.

? Moving off the legacy services. Moving logic from the older serverless/GraphQL services into the NestJS domain services without breaking anyone who depends on them.

? Protecting data integrity. Lifecycle automation driven by SAP data (archival, transfers), backfills, reconciliations and large account migrations.

? Reviewing code. This role has been reviewing roughly 35-65% of the team's PRs, so reviewing is a core part of the job.

? Cross-team design work. The go-to person for consumer SDKs, user APIs, data integrity and auth questions. Writes RFCs and migration plans.

? Keeping the platform healthy. Runtime upgrades, CI hardening, test infrastructure, performance tuning.

Soft skills and experience to screen for

? Care with data. Treats a migration or backfill as a production change: a written plan, dry runs, reconciliation, a rollback path.

? Clear writing. Can produce an RFC or migration plan that other teams act on.

? Experience moving off legacy systems. Has replaced a legacy system step by step, using feature flags, fallbacks or parallel runs, and can explain the trade-offs.

? Consumer empathy. Thinks about API stability, versioning and how changes affect downstream teams.

? Mentoring and reviewing. Can raise the level of the team through reviews, not only through their own output.

? Follow-through. Gets work merged, or deliberately closes it, rather than leaving it unfinished.
Employers have access to artificial intelligence language tools (“AI”) that help generate and enhance job descriptions and AI may have been used to create this description. The position description has been reviewed for accuracy and Dice believes it to correctly reflect the job opportunity.
  • Dice Id: vonqfeed2
  • Position Id: 980590639
  • Posted 10 hours ago
Create job alert
Never miss an opportunity! Create an alert based on the job you applied for.