Back-End Software Engineer

Portland, OR
Location: Portland
Position type: Contract


Our client is building a platform to enable decentralized business models and innovative technologies related to energy, cleantech and utility systems. The team has deep expertise in design, architecture, development, prototyping and testing of cutting edge distributed energy, computing and peer-to-peer distributed consensus networks. The company builds tools and develops projects to support and accelerate proliferation of the distributed energy, utilities and computation sharing economy of the future.

We are looking for a back-end software engineer to participate in the build out of our core infrastructure for our local energy market platform. You will join our core services team in building out microservices to support the mobile and web interfaces. Participate in refactoring existing monolithic legacy system in to microservices. 

  • BS degree in an engineering or computer discipline or relevant certification. 
  • Demonstrated experience building REST APIs and documenting them using Swagger (OpenAPI). 
  • Demonstrated expertise with Ruby and/or Python.
  • Demonstrated experience with relational and non-relational (NoSQL) databases: MySQL, MariaDB, Aurora, Postgres, MongoDB, DynamoDB.
  • Proficient in Unix/Linux operating systems.
  • Excellent knowledge of software engineering best practices (e.g. Agile software development, test-driven development, unit testing, code reviews, design documentation, continuous integration/continuous delivery, etc…).
  • Experience cloud platforms (AWS required).
  • Experience with containerized environments (Docker preferred).
  • Ability to work well with a distributed team.
  • Excellent written, presentation, and verbal communication skills.
  • History of working in startups or other fast-paced environment.
  • Familiarity with git and the git rebase workflow.
  • Experience with GraphQL.
  • Experience contributing meaningfully to one or more Open Source projects. 
  • Experience working with time-series datasets.
  • Familiarity with Blockchain and Smart Contract concepts.
  • Experience with DevOps automation tools, such as: CloudFormation, Terraform, Packer, Chef, Ansible, Puppet.