At this company, our mission is to make payments more efficient and accessible for everyone. Our team is passionate about the transformative power of digital currencies, but we're also not daunted by starting from scratch to make the world a better place. So every day, we re-build and reconsider the very concept of what it means to use money while we enable faster, safer, and more private payments to help merchants streamline checkout, save money, and delight customers.
On our engineering team, we trust and support each other to write software that works and that we each fully understand, and we encourage (continuous) self-deployment. We also expect each other to take the time needed to build software thoughtfully and maintainable. We're comfortable with modern toolchains, technologies, and practices, and we strive to continuously learn and improve our infrastructure and techniques.
We are currently looking for a software engineer to help us design, develop, and deploy the software and services that help make our company the leading retail payments network for digital assets. Our development process is lightweight and productive and revolves around our mutual respect for each other as well as our individual dedication to building high-quality products. You may be a fit for this position if you have a strong background or interest in building successful APIs, SDKs, and other systems; you have comfort with the full breadth of the software development lifecycle; you practice exceptional attention to detail, and you're comfortable learning new technologies and systems.
What you'll do
- Collaborate with a multidisciplinary team to design, develop, and document APIs, SDKs, and other services or tooling from inception through to deployment;
- Write well-designed, reusable, and testable service and library code that you-and your fellow software engineers-are happy to maintain;
- Exercise ownership and accountability over your own parts ofFlexa's infrastructure;
- Troubleshoot, debug, and upgrade existing software systems, including the development and integration of new components or automation pipelines when necessary;
- Ensure that the appropriate telemetry and other metrics are properly captured and communicated for the services and software to which you contribute; and
- Participate in code review with fellow team members to improve your work as well as theirs.
- Experience with building and documenting testable and publicly distributed software as part of a team (within the financial, retail, or blockchain technology sectors a plus)
- An analytical approach to problem-solving that's informed by an awareness of evolving technology and software development techniques
- Familiarity with or interest in writing Go, Rust, and/or TypeScript code
- Excitement at the prospects of owning, operating, and observing your own software
- Interest in using well-established software interfaces, databases, tools, and approaches, such as:
- REST, protocol buffers, andgRPC
- Postgres and NoSQL
- Docker, Kubernetes, and Terraform
- Continuous integration and delivery/deployment (CI/CD)
- Open-source software development and maintenance
- Prometheus, Grafana, and more
- Excellent communication and interpersonal skills
- A passion for learning and growing