Tenet Bank Ltd. is a regulated Institutional bank operated by financial experts and engineered by technology leaders. Sophisticated proprietary world-class infrastructure combined with existing decision-ready risk intelligence to provide refined client due diligence, real-time data analytics, and a comprehensive transaction monitoring solution for our compliance team to make informed decisions on capital flows.
Led by finance and technology experts that have real-world experience managing multibillion-dollar international balance sheets and designing proprietary banking solutions. We are a premium, full-service bank that is regulated by the Cayman Islands Monetary Authority and headquartered in the leading global financial service centre, the Cayman Islands.
As a Software Engineer, you will be building and owning certain backend services, infrastructure and data that power our products and/or products for our clients. You will gain a unique insight into how the existing financial ecosystem works across borders, significantly advance your financial-domain knowledge, and be fully immersed with international hubs of global commerce.Â
We strive for a high standard of engineering quality while solving unique scalability challenges. This is the role for you if you are an excellent communicator with the ability to translate effectively to business team members yet be able to dive deep into technical details when working with development staff. You take complete ownership of the technical implementation of projects and ensure that no stone is left unturned to avoid risks. You take quality control very seriously and work to quantify and evaluate new ways of measuring quality to ensure application uptime and a positive user experience, and that we continue to deliver excellent customer experiences
Our work spans multiple areas.
Product:Â
Backend developers work closely with product managers, project managers and front-end developers to build a system specification and develop backend systems that meet those specs. Backend developers are also responsible for the performance, scalability, and security of our products.Â
Our teams are product-aligned, and have engineers from across the stack working together to ship high quality products. Backend developers work closely with frontend developers, mobile developers, and other engineers to ensure that our products are well-integrated and easy to use.Â
Strong partnerships with product and design are at the core of our backend development process.
Data:
Advancing our mission and client projects by building products and infrastructure to collect, clean, organize and analyse datasets. We make informed decisions about user-facing products as well as internal systems, often by using mathematics and statistics to extract insights about uncertain processes. To achieve this, we rely on clean data design principles throughout the data lifecycle.Â
Clean data design is the process of creating and maintaining data that is consistent, complete, accurate, timely, and relevant. It is essential for building reliable and efficient data-driven products and infrastructure.Â
In the context of our work, clean data design involves the following activities:Â
- Collecting data from a variety of sources, including internal systems, external databases, and user interactions. We carefully design our data collection processes to ensure that the data is collected in a consistent and standardized format.Â
- Cleaning and organizing the data to remove errors, inconsistencies, and redundancies. We use a variety of data cleaning techniques, including validation, transformation, and aggregation.Â
- Organizing the data into logical and efficient data structures, such as tables, columns, and indexes. This makes it easy to query and analyze the data for different purposes.Â
- Implementing data quality assurance measures to ensure that the data remains clean and accurate over time. This includes monitoring the data for errors and inconsistencies, and regularly updating the data cleaning and organization processes.Â
By following these clean data design principles, we are able to build data-driven products and infrastructure that are reliable, efficient, and insightful.Â
Here are some specific examples of how clean data design is applied in our work:Â
- We use standard data formats and naming conventions for all of our data. This makes it easier to integrate and analyze data from different sources.Â
- We validate all data before it is loaded into our systems. This helps to prevent errors and inconsistencies.Â
- We use data integrity constraints to ensure that the data is consistent and complete. For example, we use foreign key constraints to ensure that a customer account record always has a corresponding customer record.Â
- We regularly clean and organize our data. This improves the performance and scalability of our systems.Â
- We use a variety of data quality assurance measures, such as monitoring the data for errors and inconsistencies, and regularly updating our data cleaning and organization processes.Â
By following these principles of clean data design, we are able to build data-driven products and infrastructure that are more reliable, efficient, and insightful.Â
Your Day-To-Day Will Involve
- Design large scalable systems within a team; making the right tradeoffs for risk and long-term maintainability
- Lead, build, test, and release product-facing features with stringent correctness and scalability requirements; these features could be related to market data, trading, accounting, authentication, or security
- Proactively identify and drive optimisations and improvements to the product, infrastructure, and systems
- Collaborate with our frontend team to fine tune our REST API and with our data team to support clients
- Target the highest profile problems within engineering, work to deliver a solution in a highly accelerated way with a repeatable, reusable pattern, template or framework for teams going forward facing similar problems
- Identify high impact classes of problems and design and implement general solutions with high return on investment
- Provide mentorship both formally and informally to engineers, define and formalise the architecture design process and guide the overall architectural directionÂ
- Provide infrastructure and tooling to automate test development and execution up and down the testing pyramid, including unit, API and integration testing
- Provide the infrastructure to automate and standardise how software is built, versioned and deployed to target environmentsÂ
- Accelerate Kubernetes Adoption, provide compute, network, storage plus abstractions to interface with PAAS frameworks to automate, standardise and abstract common infrastructure
- Provide scalable, robust software and infrastructure
About You
- We are looking to grow our team and are looking to add engineers ranging from 3 to 6+ years of software engineering experience
- Fluent in one or more programming languages, preference given to .NET & NodeJS
- Experience authoring and operating high-scale services
- Experience with scalable distributed systems, both built from scratch as well as on Microsoft Azure
- A focus on software engineering best practices such as testing, static analysis, continuous integration, delivery, and deployment
- Self-sufficient in contributing to the team's engineering efforts
- A proven tech lead with experience planning and leading large projects with long-term impact on a single system or team
- Strong technical grasp and have excellent judgement on task prioritisations.
- Able to solve complex engineering problems that deliver results which help the team to achieve its objectives
- History of creating and applying new processes and tooling to increase engineering efficiency
- Willingness to learn and use new technologies
- Ability to debugging complex systems
- Solid understanding of relational databases and transactions
- Familiar with writing highly concurrent systems
- Good intuition for REST API design
Bonus Points
- Experience with high-growth startups
- Experience with GoLang
- Experience working on Kubernetes and Microsoft Azure
Our Technology Stack
- gRPC for internal service communication
- .NET using C#, NodeJS using Typescript, as main languages and frameworks of choice.
- Databases MS SQL Server, MongoDB
- Container and container orchestration technologies (e.g. Docker, Kubernetes).
- Microservice-oriented architectures.
- Cloud-native infrastructure (i.e. Microsoft Azure).
Listed in: Web3 Jobs, Node.js Web3 Jobs, Accounting Web3 Jobs, Security Crypto Jobs, Golang Web3 Jobs, Full Time Crypto Jobs, Developer Crypto Jobs, Devops Crypto Jobs, Web3 Web3 Jobs.