Create a gist now

Instantly share code, notes, and snippets.

What would you like to do?
Senior Solidity/EVM/Ethereum opening at Aragon

Senior Solidity/EVM/Ethereum opening at Aragon

We are looking for an Ethereum wizard to work with us on Aragon Core and the future Aragon Network.


  • Fulltime commitment. Side projects and open source are accepted (and encouraged).
  • Completely remote position, no relocation required.
  • Very competitive and negotiable compensation.
  • You decide how to allocate your salary in USD, ETH or ANT. Rates will be revisited every 6 months.
  • Bonus in ANT based on performance.


  • Expert understanding of Ethereum and the inner workings of the EVM.
  • Ability (and a track record) to ship high quality, well crafted code running on Ethereum.
  • Strong unit testing culture.
  • Being passionate about decentralization (having some concerns is totally fine, we all do).
  • Being an autonomous individual with a proactive attitude and a love for time self-management (We are focus-driven work, not hours-driven).

Good to have:

  • Interest and knowledge in cryptoeconomics.
  • Experience contributing or managing open source projects.
  • Very good written communication skills.

How do we work:

  • We are a fully distributed company – we don't think talent is geographically centralized. We do offsites regularly for the team to meet and work together for a week.
  • We do focused deep work sessions 4 days a week, leaving Friday for all meetings, calls, thinking time and side projects.
  • We encourage team members to spend a substantial part of their paid work time on unrelated blockchain open source projects to speed up the development of the ecosystem.
  • We are open source only.
  • We are a technology company. Our focus is product first.


  • We will reward referrals for successful hires up to 10% of the first yearly salary. This would be done with a vesting type smart contract that would be voided in case the hire leaves the organization.

How to apply:

  • Write the code (deployable to the EVM), publish it on Github (public or private) and send link to repo plus any information you consider important to, with the subject Solidity opening application.

  • The code we are looking for could be comformant to the following interface. Feel free to remove/add any functions as you see fit:

// For the sake of simplicity lets assume USD is a ERC20 token
// Also lets assume we can 100% trust the exchange rate oracle
contract PayrollInterface {
  /* OWNER ONLY */
  function addEmployee(address accountAddress, address[] allowedTokens, uint256 initialYearlyUSDSalary);
  function setEmployeeSalary(uint256 employeeId, uint256 yearlyUSDSalary);
  function removeEmployee(uint256 employeeId);

  function addFunds() payable;
  function scapeHatch();
  // function addTokenFunds()? // Use approveAndCall or ERC223 tokenFallback

  function getEmployeeCount() constant returns (uint256);
  function getEmployee(uint256 employeeId) constant returns (address employee); // Return all important info too

  function calculatePayrollBurnrate() constant returns (uint256); // Monthly usd amount spent in salaries
  function calculatePayrollRunway() constant returns (uint256); // Days until the contract can run out of funds

  function determineAllocation(address[] tokens, uint256[] distribution); // only callable once every 6 months
  function payday(); // only callable once a month

  function setExchangeRate(address token, uint256 usdExchangeRate); // uses decimals from token

eolszewski commented May 23, 2017

@izqui This is clever insofar as getting a look at how people are developing with solidity, I wish you all the best of luck finding good solidity devs that are not at Consensys. Are you all operating under a DAO?

Considering USD isn't transferrable on the blockchain (as opposed to ETH and ANT), how can one write a smart contract to pay their own salary--especially assuming the extreme case where they want to be paid 100% in USD?


izqui commented May 30, 2017

@DeviateFish we are assuming USD is some sort of ERC20 token that you can exchange for Aragon sending you a wire of that x tokens. Just for the exercise's sake though.


izqui commented May 30, 2017

@eolszewski we are working hard so we can operate as a pure DAO as soon as possible

DeviateFish commented Jun 8, 2017

@izqui Thanks for the clarification, and the updates! Sorry for the late response, apparently I don't get notifications about responses on gists :(

Alonski commented Sep 28, 2017

@izqui I fixed a spelling mistake :)
Or maybe this is a part of the test?


izqui commented Sep 28, 2017

Thanks for noticing, fixed! @Alonski

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment