Pintu is hiring a Web3 Senior Backend Engineer (Gateways/Client API) - Exchange
Compensation: $81k - $90k estimated
Location: Setiabudi ID
Full Job Description
Pintu is offering an opportunity for a full-time Software Engineer to join a team responsible for Gateway’s infrastructure and landscape. The applicant will gain experience in all phases of the software development lifecycle, from requirements gathering, to design, coding, unit testing, debugging, and supporting in production.
This position requires outstanding technical proficiency, professionalism, solid communication, exceptional problem-solving skills as well as an eager attitude.
The successful candidate will play a key role in building, operating, and evolving an error-free, low-latency, high capacity and throughput, next-gen Crypto Exchange, its matching engines or back-end software systems that serve millions of customers (retail or institutional investors, B2B2C clients, market makers, etc.). The ideal candidate should be knowledgeable in the trading technologies domain, multi-threading and multi-host scaling applications development, orchestration engines, high-performance programming languages, and associated debuggers/profilers.
The ideal candidate should be knowledgeable in the trading technologies domain, multi-threading and multi-host scaling applications development, orchestration engines and high-performance programming languages, and associated debuggers/profilers.
Strong written and oral communication is a must as the applicant will be frequently interacting with the business stakeholders and product teams to achieve Pintu strategic business goals
Essential Functions / Responsibilities
- Analyze Business/Product requirements and propose effective and efficient technical solutions in delivering changes and innovations to Pintu Pro Exchange APIs and Gateways landscape within expected parameters of cost, time, and quality
- Work with a project focus group (product engineering, product management, architecture, and CTO) to compile a work breakdown structure of tasks for given deliverables and provide realistic estimates for completion or project assignments
- Design, implement and maintain robust and effective client communication messaging protocols, both streaming and request-response, for trading, account(s) management, and other API functions
- Develop and unit test all functional Gateway and API modules created or modified according to software development best practices
- Together with Accounts and Matching Engine Teams develop, evolve, and maintain effective internal components communication protocols between all elements on the Pintu Pro Exchange landscape
- Develop and maintain the respective operational benchmarking and monitoring models for all landscape modules related to Pintu Pro APIs and Gateway infrastructure
- Collaborate with other Developers, SREs, and QA Engineers to execute full-cycle integration, and functional and regression testing. Own and resolve all priority defects identified within the solution codebase efficiently and in a timely fashion
- Promote software changes across all environments, safely and responsibly, through Development, Staging environments to deploying updates to the Production environment in a zero-downtime manner
- Provide on-call Level 2 technical support during business and, occasionally, off hours depending on rotation, act as an escalation point for the Level 1 support in case of severe issues
- Participate in team exercises to identify and implement areas for continuous improvement, and be proactive in bringing your ideas across
- Educate and mentor your engineering colleagues in the areas of your own expertise and domain knowledge, and be open-minded and approachable
Experience Required
A minimum of 5 years of experience working in the financial trading domain (exchanges, proprietary trading firms, market makers, brokers, etc.) At least 2 years working in the crypto industry.
General understanding of the general Exchange microstructure model and components
Experience in developing high-load and high-throughput systems, serving large (thousands to millions) amounts of incoming API connections.
Solid understanding of the Exchange (either Traditional or Crypto) operating principles and client-facing APIs (market data, ordering, balance monitoring, historical inquiries, etc.)
Experience in building efficient and robust application-level networking messaging protocols (specifically over web sockets, REST APIs, and gRPC)
Experience working in small focus teams of high-skilled developers.
The ideal candidate should also have experience building and running/operating Exchange’s client-facing components (gateways) in production
Necessary Skills
- Good knowledge of the Linux operating system
- Solid hands-on experience in Go and it’s a respective web and RPC communication modules
- Hands-on experience in designing and implementing data transfer protocols
- Strong knowledge of HTTP/HTTP and web-socket protocol layers
- Solid hands-on experience with designing and implementing client-facing API
- Rest APIs
- Web-socket streaming APIs
- any other RPC models and protocols
- Understanding or messaging protocol engines and models (gRPC, Protobuf, Thrift, Avro, etc.)
- Base understanding of the data encoding/decoding with at least HMAC-SHA256
- Hands-on experience working with one of the Message Broker solutions (Kafka, RocketMQ, etc.)
- Hands-on experience with the Continuous Integration principles (unit testing, pull requests, GitHub, or any specific continuous integration engine like GitLab/Jenkins/etc.)
- Solid hands-on experience in building and operating API Gateways monitoring systems
- Good knowledge of code analysis and profiling techniques and tools (for example Coverity, Valgrind, etc.)
- Personal: self-sufficient with good hard and soft skills, committed and responsible, able to perform well under pressure
Preferred/Bonus Skills
- Knowledge of TCP/IP and UDP networking protocols
- Knowledge of traditional trading protocols (FIX, ITCH, OUCH, OmNET, etc.)
- Experience in NodeJS and/or Java (optional)
- Experience working with Application Containers and Container Orchestrators (example: Kubernetes or Nomad)
- Experience working under Continuous Delivery and Zero-Downtime models (for example: blue-green deployments, canary deployments, etc.)
- Knowledge of Google Cloud and AWS Cloud Infrastructure and components (products)
- Good understanding or experience in Scrum methodology
- Understanding various trading models, types of trading, and rationale behind trading and market making
- a solid plus goes to candidates that are doing any of the crypto trading (or any other asset classes) themselves on a private basis
Apply Now: