Skip to content

Backend - Sr Software Engineer I

RemoteUnited States, New York, New YorkEngineering

Job description

About POAP


POAP is a platform that allows Issuers to distribute badges in the form of NFTs to Collectors when they take part in an activity such as an event or a landmark occasion. Issuers range from small events and communities to event-organizing companies and departments with numerous people working in teams.
POAPs mission it’s to solidify its position as the best ecosystem for the preservation of memories, serving more communities more reliably.
POAP is a complex product with the end goal of enabling everyone to preserve their memories using a reliable standard, empowering the collectors with true ownership of their digital assets. Our products act as a bridge between mainstream and web3 by providing a friendly way to interact with blockchain technologies while offering a world class experience.

About the role

As a Senior Backend Software Engineer at POAP, you will join our Backend Engineering team to work on our new and existing projects. We have an ambitious roadmap ahead of us which will bring interesting challenges and opportunities for development.

As part of the Backend Engineering team you will be expected to scope and deliver high quality features while maintaining the best engineering practices. POAPs culture is based on teamwork and support, so we strive to communicate, provide constructive feedback and achieve more by working together.

Technology and people are the way in which we aim to achieve POAPs mission. We work in autonomous teams that self-organise, have ownership over the products they build and collaborate with other teams in order to constantly raise the bar on our end user experience.

We will encourage you to develop yourself as a professional and outgrow your responsibilities by providing challenging opportunities to make a real difference in a fast growing company.

Role & Responsibilities


  • Independently scope and implement quality solutions, promoting good practices such as testing and documenting

  • Understand and help define better processes at engineering

  • Proposed reasoned design decisions, communicating risks and tradeoffs

  • Own their features: Accountability from planning to deployment, use analytics to understand users and make informed decisions

  • Estimate methodically and know when to cut scope

  • Work with cross functional teams, communicating technical issues clearly and in time

  • Share knowledge with more junior engineers while raising the bar on best practices, having a positive impact in various teams

  • Trusted to manage with full autonomy

  • Provide constructive feedback to others

  • Understands the organization's context and ready to make changes to support wider goals

 

Key Metrics


  • Team velocity

  • On time deliveries

  • Team cycle time

  • Net Promoter Score / Customer satisfaction


Tech Stack


  • Typescript as our programming language of choice 

  • Node.js as our backend platform

  • TypeORM, NestJS, Mongoose as our backend libraries

  • Postgres as our core database

  • Redis for caching

  • SQS to manage background tasks

  • Some AWS services to send emails and store objects

  • Datadog and Sentry for logging and monitoring

  • GitHub to manage our source code

  • Jest to run our tests


Job requirements

Required skills and experience


  • 5+ years of experience working as a Software Engineer with Java or NodeJS.

  • 3+ years of experience working with relational databases or NoSQL databases.

  • Experience using Git.

  • Experience developing scalable REST APIs in cloud environments.

  • Experience working with tools like Jira, Slack, Discord and Notion are a plus.

  • Fluent in English.

  • You have a keen understanding of what is needed to deliver software on time with high standards of quality.

  • You are very well organized and extremely focused on structure and documentation

  • You are always on the look out for process optimizations that result in productivity increases.

  • Working with distributed systems is a nice to have.

  • Familiarity with Agile or Scrum-style methodologies.

  • Cryptocurrencies & Blockchain knowledge is a nice to have.

  • Experience working with a global team is a nice to have.