This position is for a Software Engineer, reporting to the Core/Infrastructure Manager, who will help design and develop API and identity services (including authentication and access to our internal systems). The position calls for an engineering role, meaning someone who can also lead projects from design to completion.
Our tech stack includes:
- Docker-based microservices written in the Rust Programming Language
- Other Paidy microservices written in Scala (some services in the team are written in Scala)
- AWS Services (fargate, RDS, lambda) with PostgreSQL DB
- Circle CI + terraform provisioning and deployment
- Linux/MacOS development environment
- HTTPS, SSL, X.509, and other secure technologies for secure communications
- AWS Cognito
- HTTP REST and GraphQL APIs (JSON data)
- Kafka Message Queueing
Your Duties & Responsibilities
- At least 3 years of backend development in multiple modern programming languages (C/C++, Java, Rust, Scala, Golang, Python, etc.)
- Experience with designing software both from the ground up and making changes to existing applications (OO-design, Microservices, functional design, DDD, Domain/Protocol separation, etc.)
- Knowledge of systems development and operations (Docker, Redis, SQL DBs, AWS, Source-control, CI/CD systems, etc.)
- Understanding of OO-design principles
- Understanding of functional programming paradigm and methodologies
- Business-level fluency or higher in English
The following are encouraged, but not required:
- Development experience with multiple programming languages
- Some knowledge of or experience with functional programming.
- Experience in the Fin-Tech industry, especially with banking systems and/or credit-card processing systems.
Qualifications/Must Have
- 3+ years experience with multiple backend programming languages
- Business-level or higher English (both reading and writing)
- Prior Rust or Scala experience is NOT a requirement
- Conversational fluency in Japanese is a plus (NOT required)
- Understanding of software engineering principles (OO, Functional Programming, software design, etc.)