Position title
Software Engineer- Full Stack

The software engineering team at Imperfect builds the eCommerce platform, internal tooling, and applications that support our mission to eliminate food waste and build a better food system for everyone. Our team solves a bushel of interesting problems across our business, from providing a convenient and delightful customer experience to automating and optimizing the supply chain, warehouse operations, and logistics.

Our technology stack currently consists of React on the frontend and a mix of Node and F# in a microservices backend. Data persistence is handled by PostgreSQL and Snowflake, messaging by RabbitMQ and Kafka, and observability by Datadog. We also leverage React Native and recently launched our iOS and Android apps. We believe in building expertise in a relatively small set of modern but mature tools.

This position will be joining the Merch Tech team. Merch Tech is responsible for helping our merchandisers get the right products, the right prices, and the right information to our customers through solutions ranging from inventory and catalog management to personalized shopping experiences.  The team is passionate about functional programming and CQRS/Event Sourcing patterns to help create immutable, self-documenting, self-auditing, quality systems to help support our dynamic business domain.

  • Collaborate with other team members to provide strong customer-focused experiences
  • Own the full software development lifecycle, from initial concepts, requirements gathering, development, testing, deployment, and maintenance
  • Actively contribute to team and company standards
  • Practice disciplined software engineering (e.g. automated testing, code reviews, and writing maintainable code)
  • Ensure the reliability of systems essential to Imperfect customers and internal users
  • Keep up-to-date with the latest technological developments related to your domain
  • We do not require that candidates meet all of the below criteria. Successful candidates demonstrate a strong passion for our mission and an appetite for learning – if that describes you, we encourage you to apply!
  • 3+ years of professional experience in full-stack software engineering
  • Industry experience with or an appetite to learn .NET / C# (or other functional programming languages)
  • Industry experience and a high level of comfort with JavaScript / TypeScript and React
  • Highly adept with asynchronous application logic to fetch data from APIs
  • Understanding of database schema design, caching, and scalability
  • Expertise with relational databases, such as PostgreSQL
  • Experience building resilient, loosely coupled microservices
  • A strong commitment to crafting maintainable, dependable code
  • A pragmatic, customer-centric approach to problem-solving
Employment Type
Beginning of employment
Duration of employment
Job Location
Remote work from: Costa Rica
Date posted
July 11, 2022
PDF Export
Close modal window

Position: Software Engineer- Full Stack

Thank you for submitting your application. We will contact you shortly!