Requirements:
Development experience, comfortable working in multiple languages at once * Java, F# required
Python and/or Golang a plus
Experience working in agile collaborative coding environments (peer review, continuous integration, etc
5+ years of application development
Experience working in distributed, remote teams across multiple time zones a plus
Experience in large scale operations environments
2+ years of experience with Linux/Unix development or systems administration
2+ years of experience with networking systems and technologies
Good understanding of network performance and security, IPv6 experience a plus
Experience with virtualization technologies a plus
Experience working with containerization technologies a plus
Configuration Management tools experience with Ansible, or SaltStack a plus
BA/BS in Computer Science preferred, or equivalent experience (advanced degrees preferred)
Responsibilities:
Contributes to the design and architecture of new or re-engineered software/storage environments
Prepares written software/storage specifications for complex products from architectural diagrams and documents
Develops and reviews design, functional, technical and/or user documentation, as needed
Develops, reviews, analyzes and implements test strategies for software products and systems/for storage products and systems
Develops, tests and integrates code for new or existing software of significant complexity
Provides sustaining or maintenance support to existing software/storage environment, either by implementation or providing guidance to less senior engineers
Designs and implements source code revision control methods for products
Prepares accurate project status documentation for leadership
Measures and analyzes quality metrics.
Defines and implements actions for departmental or cross-functional process improvements
Contributes to resource, schedule and cost sizing for software development projects of medium complexity