Senior Software Engineer - DevOps
Description
General Summary:
Reporting to the Software Engineering Manager, the Senior Software Engineer (SSE) will have a diverse set of responsibilities related to all forms of engineering for all products and services. The SSE will work closely with members of the engineering, product development, and customer experience. The SSE will also work with company contractors and sub-contractors.
The ideal candidate will be self-motivated, enthusiastic, and passionate about software development, cloud enablement, attentive to detail, flexible and comfortable working in a fast moving, entrepreneurial, start-up environment. The SSE will be responsible for work as part of agile sprints, in addition to side projects and infrastructure reengineering. An ideal candidate
will have cloud experience in either AWS or Azure.
Essential Job Functions:
The primary duties of the position are described in detail in the job description, but are not limited to, and may be changed from time to time as the needs of the business change.
At this point in time the following are the immediate critical core responsibilities:
Bringing a strong but sensible technical voice to the table when having strategy conversations
Mentoring engineers within the organization
System design to achieve new functionality and where the architecture and product will scale to align with the company’s strategies and goals
Travel as-needed onsite to offices and to interact with customers, prospects, and partners
Requirements
A strong understanding of and proven track record with:
SDLC in a regulated industry
Cloud architecture
Modern software design patterns
Mentoring of peers and less experienced engineers
Knowledge of professional software engineering best practices for the full development lifecycle (coding standards and reviews, source management, automated build and testing)
Strong experience with environment and deployment automation, infrastructure-as-code, deployment pipeline specification and development
Operations design, metrics and SLA definition, trigger specification
Experience managing applications in AWS and/or Azure and familiarity with all of their core, compute, networking, storage, security, compliance, serverless, orchestration, and analytics offerings
Experience building and maintaining container-based infrastructures
Specify and manage the provisioning of deployment environments using tools like CloudFormation and Terraform
Support data-centric environments including data replication, log shipping, performance tuning, and backups
Define, develop, and maintain monitoring and reporting infrastructure and best practices
Development and Production Environment specification, creation, and maintenance
Operations Design
Build scripting
On-going monitoring and support
Experience with digital documents
Experience with both SQL and NoSQL databases
Expert in cloud architecture and cloud native design
Expert in API design and development
Education and Experience:
- Bachelor’s degree in Computer Science or affiliated discipline
- Master’s degree is preferred
- 8+ years of experience in software development
- 4+ years of DevOps experience
Preparation, Knowledge, Skills and Abilities:
Ability to work in a fast-paced environment, under tight deadlines
Work effectively with a diverse, international, and dynamic team
Ability to prioritize tasks and switch direction quickly as required to meet deadlines
Ability to work independently as well as part of team to resolve issues
Ability to mentor peers and less experienced engineers alike
Sound problem resolution, judgment, and decision-making skills
Self-starter with experience working on projects with limited direction
Ability to collaborate and quickly learn new technologies and concepts
Quality of work to include timeliness, completeness, and accuracy
Excellent documentation habits and writing skills