Senior Blockchain Testing Engineer

Company: Sifchain Finance
Location: San Francisco, California, United States
Type: Full-time
Posted: 21.APR.2021
< >

Summary

At Sifchain we are in the process of launching an Omnichain Decentralized Exchange. This is a unique technical undertaking that continues to...

Description

At Sifchain we are in the process of launching an Omnichain Decentralized Exchange. This is a unique technical undertaking that continues to attract interest and excitement from a multitude of well known investors in the blockchain sphere. In fact, the private sale round was oversubscribed within two days of its announcement. Investors recognize that our offering has unique benefits over both CEXes and existing DEXes, and has the potential to fundamentally change the DeFi ecosystem. The team is led by a blockchain architect from Thorchain, which raised its liquid market cap from $1M to over $150M in two years.The blockchain engineering team at Sifchain is looking for a talented test engineer to implement processes to test the functionality, security, performance, and scalability of Sifchain. The test engineer will ensure Sifchain has clear, complete test coverage that other engineers can easily read and understand. Before we create features, we should execute walkthroughs of our architecture to discuss testing strategy and leave with a clear test plan that addresses the points below. The test plan should cover unit testing of objects and integration testing of functions. For completion, our integration tests should cover every branch of code, and we should add them in increments corresponding to the addition of a function so that we are always testing quickly after we add functional code. Our software will be used intensively by many users. The test plan will need to load test our deployments so that we're sure they perform well under heavy usage. We also consider developers users and want to make sure Sifchain runs well and new developers can start using it very quickly. We will want to test its security thoroughly. The Sifchain will be used to secure billions of dollars and will connect to other blockchains also securing billions of dollars. It is important that the platform's nodes be safe from intruders. Sifchain will include penetration testing in its test plans to observe attempts to compromise its network from both within and without.For the parts of our software that interface with web or mobile apps, we should do end to end testing of the GUI. This may involve doing UI testing for 3rd party apps that we do not control or even reviewing the open source code of 3rd party apps to debug. We should also randomly conduct ad-hoc testing and use the product for personal reasons to empathize with the customer and identify issues from their perspective. The test engineer should, with the help of a site reliability engineer, identify the metrics that users will care most about, and monitor our performance. We will routinely conduct performance tests and should have systematic alerts whenever a metric dips below a benchmark. When we research the cause of the metric dip, we should be able to quickly debug to find the source of the error because of our thorough and comprehensive testing.The test engineer should familiarize themselves with incentivized testnets, slow cap raise launches, and other forms of beta testing commonly used in the cryptocurrency industry. These should be considered marquee moments or milestones where we will receive an influx of end-user behavior on the live application and the test engineer should be prepared to take on new, unforeseen issues.This testing will be primarily focused on blockchain nodes (called validators) running on Kubernetes. Your tests will help us maintain our validators' reliability, security, and availability while connecting to peer validators run by members of other teams to collectively support a distributed, community owned network (the blockchain). This network includes low latency, real-time micro-services that support data relay from one validator to each other, or to external API services where users can monitor the network health and other telemetric data.Requirements Use and evangelize sound testing and debugging practices Develop detailed, comprehensive, and well-structured test plans and test cases Prioritize and plan a myriad type of testing activities Design, develop, and execute automated tests with a continuous integration / continuous deployment (CI/CD) infrastructure Identify and report issues found, then verify that issues are resolved Test a live running distributed system and micro-services architecture that is collectively a blockchain Collaborate with developers on all parts of the stack internally Participate in open source development Proven work experience in software testing or quality assurance Strong knowledge of software testing methodologies, tools, and processes Hands-on experience with automated testing tools Fluency in a systems-level programming language (Golang preferred). Experience with testing complex software systems with substantial data volumes or millions of users with production quality deployment, monitoring and reliability. 2+ years of professional test engineering experience Benefits Industry competitive salary Commitment to employee development and learning Joining a talented and senior blockchain engineering team Full time remote

 
Apply Now

Share

Free eBook

Flash-bkgn
Loader2 Processing ...