# Protocol Engineer

**As a protocol engineer, you’ll work with our product team and senior engineers to develop extensions and improvements to the PoolTogether Protocol. Our team is small, so you’ll have a significant impact on the product and decision making.**

## What You’ll Do

* Work with the product team to develop requirements and specifications&#x20;
* Design, develop, test, deploy and verify smart contracts
* Write scope-of-work documents for auditors
* Review audit reports and mitigate issues
* Analyze and debug production issues reported by users
* Setup and manage transaction automation
* Stay up-to-date on smart-contract security concerns
* Research protocols that could provide value to PoolTogether
* Understand the PoolTogether Protocol thoroughly, so that you can improve the system.

## Your Skills and Knowledge

* Have excellent written and verbal communication; we communicate asynchronously most of the time.
* Write Solidity smart contracts&#x20;
* Deploy smart contracts to Ethereum, Optimism, Arbitrum, Polygon and others.
* Test smart contracts rigorously using unit, integration, and fork tests.
* Work with Hardhat and Foundry
* Understand the limits of fixed-point arithmetic and how to minimize error.
* Understand EVM storage constraints and practice efficient memory management.&#x20;
* Be familiar with smart contract standards such as ERC20, ERC4626, etc.
* Have a solid understanding of smart contract design patterns
* Know how to design for an adversarial environment
* Have excellent knowledge of smart contract security concerns and how to mitigate them

## To Apply

**This is a remote position for residents of the United State or Canada**

Apply to <careers@pooltogether.com>
