Backend API Lead Engineer

Location Singapore
Discipline: Software Engineering
Job type: Permanent
Contact email: career@bcg-rise.com
Job ref: 263392
Published: 4 months ago

At Contour, our mission is to transform the global trade industry so that businesses and communities can have a brighter future by having easy access to affordable trade finance products. Our technologists work to achieve this by digitising traditional trade finance processes using blockchain technology run on R3’s Corda platform, to create innovative solutions for the industry.
 
Contour’s Engineering team utilises the latest in distributed ledger technology (DLT) to solve complex decentralised problems. As a team, we are collaborative and are constantly looking at ways to enhance our product through the latest tools and technologies. We are a passionate team that promotes innovation, transparent knowledge-sharing and the idea that challenging one another will bring out the best in each of us.
 
Context of the role:
 
Reporting to the Head of Engineering, the Back End API Lead Engineer will be responsible for providing technical guidance and overseeing delivery of our APIs. The Contour APIs provide application logic, third party integrations, as an abstraction layer for the R3 Corda Blockchain tier of our application for our front end application, as well as partner integrations.
 
This role will also see you overlooking all stages of development and delivery, by establishing standards and conventions to ensure the application code adheres to quality engineering principles, practices and design patterns. You will have strong experience working in an agile environment where software engineers, testers, product managers and DevOps work closely together.
 
 
Key Responsibilities:

  • Own, oversee and provide direction for the API layer

  • Provide technical leadership and mentorship via peer reviews and training

  • Optimise delivery processes with a proven focus on continuous improvements

  • Contribute towards application development

  • Ensure application code and process quality standards across the development team

  • Create and maintain product and engineering documentation

  • Work with the product owners and development team to refine requirements and high-level estimation

  • Provide high-level estimations and sizing for upcoming work

  • Delegate tasks amongst the team in line with their corresponding skills

  • Establish best practices and technical standards amongst the engineering team

  • Set and achieve success metrics for the engineering team

Job requirements

  • 5+ years development experience using Java 1.8+ & Kotlin

  • 3+ years experience in an enterprise-level environment

  • Strong knowledge of enterprise application architecture patterns and concepts

  • Experience delivering end-to-end, production-grade platforms and services with a large user base

  • Experience with applications frameworks such as Spring Framework

  • Familiarity of multiple layers of the infrastructure and application stack from systems / OS development through to networking, middleware and application logic

  • Proven problem-solving skills and ability to work under pressure

  • Strong experience designing and implementing systems leveraging RESTful style API’s & message brokers

  • Experience with unit test coverage libraries (i.e. Jacoco)

  • Experience with CI build pipelines (i.e. Jenkins, TeamCity, Bitbucket Pipelines, Github Actions, Gitlab, Azure DevOps Pipelines)

  • Understanding of artifact management through build tools like Maven and Gradle, as well as remote artifact repositories (i.e. Artifactory, Nexus, etc)

  • Postgres or similar RDBMS development and design

  • Awareness of authentication and authorization concepts and experience applying to API’s

  • Excellent communication skills, with the ability to lead by example

Nice to Have

  • Experience with R3 Corda Blockchain

  • Experience running JVM based applications with Kubernetes, on cloud-based infrastructure (i.e. AWS, Azure, Google Cloud)