Software Developer Engineer

$160,000 - $210,000/Yr

Unclassified - Tacoma, WA

posted 5 months ago

Full-time - Mid Level
Tacoma, WA

About the position

The Software Developer Engineer will focus on applying the principles of engineering to software development. This role includes analyzing and modifying existing software as well as designing, constructing, and testing end-user applications that meet user needs; all through software programming languages. The Engineer must have knowledge of professional software engineering practices & best practices for the full software development life cycle, including coding standards, code reviews, source control management, build processes, testing, and operations. In this position, the Software Developer Engineer will work closely with peer team members to design suitable software systems, tools, and interfaces to fulfill stated requirements. Collaboration with team members is essential to form a strong foundation and best practices for software development. The role emphasizes building operational excellence with a focus on monitoring managed resources and infrastructure, which includes creating mechanisms for gathering metrics, troubleshooting/debugging, tracking, and resolving technical challenges. The Engineer will also be responsible for building automation and self-serve tools to streamline operations, updating and enhancing current software tools, automating support processes, and documenting systems. Additionally, the role involves building tools to support high-performance infrastructure used in labs and manufacturing environments, analyzing and modifying existing software, and ensuring that end-user applications meet user needs. The Software Developer Engineer will oversee software development, modeling, simulation, testing, and quality assurance, while also conducting systems risk and reliability analysis and monitoring systems performance. This position requires the ability to perform maintenance and software integrations for existing systems, maintain or exceed compliance with industry standards, and manage application development throughout the full lifecycle of software. The Engineer will identify and assess modern technologies prior to implementation, modify software to fix errors, adapt it to new hardware, improve performance, or upgrade interfaces, and direct system testing and validation procedures. Consulting with departments or customers on project status and proposals, as well as working with customers or departments on technical issues, is also a key aspect of this role.

Responsibilities

  • Work with peer team members to design suitable software systems, tools, and interfaces to fulfill stated requirements
  • Collaborate with team members to form a strong foundation and best practices for software development
  • Build Operational Excellence with a focus on monitoring managed resources & infrastructure
  • Build automation and self-serve tools to streamline operations
  • Build tools to support high-performance infrastructure used in labs and manufacturing environment
  • Analyze and modify existing software as well as design, construct, and test end-user applications that meet user needs
  • Responsible for software development, modeling, simulation, testing, and quality assurance
  • Conduct analysis of user requirements, software, and code
  • Complete systems risk and reliability analysis
  • Monitor systems performance
  • Perform maintenance and software integrations for existing systems
  • Maintain or exceed compliance with industry standards
  • Responsible for application development for the full lifecycle of software
  • Identify and assess modern technologies prior to implementation
  • Modify the software to fix errors, adapt it to new hardware, improve its performance, or upgrade interfaces
  • Direct system testing and validation procedures
  • Direct software programming and documentation development
  • Consult with departments or customers on project status and proposals
  • Work with customers or departments on technical issues including software system design and maintenance
  • Analyze information to recommend and plan the installation of new systems or modifications of an existing system
  • Consult with engineering staff to evaluate software-hardware interfaces and develop specifications and performance requirements
  • Design and develop software systems using scientific analysis
  • Prepare reports on programming project specifications, activities, or status
  • Work with project managers to obtain information on limitations or capabilities

Requirements

  • Bachelor's degree in computer science or related technical discipline, or equivalent work experience
  • 5+ years of experience in software development
  • 5+ years of non-internship professional software development experience with delivering software in a production environment
  • Experience in developing distributed software systems in C/C++, Python or Java on Linux or Windows
  • 2-3 years of experience contributing to the system design or architecture of new and current systems
  • Experience with building large-scale, high-performance systems in a complex, multi-tiered, distributed environment
  • Experience working with AWS or Azure services
  • Experience with Identity and Access Management - Active Directory (AD)
  • Experience in developing cloud-native environments (AWS or Azure)
  • Experience communicating with users, software development engineering teams, and management to collect requirements, describe software product features and technical designs

Nice-to-haves

  • Frontend development experience preferred - HTML, CSS, JavaScript, JSON, Node.js, MySQL
  • Other desired technical skills include Perl, SQL, HTML, UNIX/LINUX

Benefits

  • Medical insurance
  • Dental insurance
  • Vision insurance
  • Short and long-term disability insurance
  • Life insurance
  • 401K participation
  • Paid time off
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service