Sr. Software Engineer

This position is responsible for a portion of a total engineering project related to designing, developing, testing, and maintaining software systems and applications. If you’re a full-stack software engineer with mobile experience, we would be excited to speak with you. We value and encourage diversity in the workplace and women, minorities, and veterans are highly encouraged to apply. Thank you!

Type: direct hire

Location: Portland, OR hybrid

JOB DUTIES AND RESPONSIBILITIES:

  • Independently applies knowledge of software engineering principles to design, code, troubleshoot, and debug software applications.
  • Develops new and varied solutions to software problems within our standards and contributes to the value of product design by studying competitive products, customer practices, and identifying customer needs.
  • Analyzes software issues to determine suitable solutions to prototypes, production, or field failures by establishing and coordinating design reviews with peers and project leads. Responsible for organizing data and preparing documentation for assigned reviews.
  • Responsible for thoroughly testing their software, coordinating others on software verification tests, and testing peer software when necessary.
  • Responsible for development and completion of all software documentation, working collaboratively with cross-functional teams. Ensures documentation is complete, accurate, and properly maintained, recording new ideas in the form of flow charts, sequence diagrams, etc. to convey concepts.
  • May direct the work of drafters, technicians, and others who assist in small projects.

QUALIFICATIONS:

Knowledge, Skills, and Abilities

  • Ability to develop software requirements and apply design methodologies.  
  • Excellent written/oral communication skills with a proven ability to work both independently and collaboratively within a team environment while following established procedures.
  • Strong understanding of the software development lifecycle.
  • Understanding of software configuration management tools.

Education and Experience

  • Bachelor’s degree or relevant experience, plus, at least five (5) years of relevant software engineering experience of increasing complexity.
  • Software development experience using React Native, React, TypeScript, Python, and other programming languages. Along with Terraform, microservices, and other modern tools and concepts.
  • Experience with TDD, pair programming.
  • Understanding of CI/CD concepts.
  • Familiarity with UI application frameworks and/or cloud platforms.
  • Experience delivering software using Agile development processes.