Mode: Contract or Contract to Hire
The candidate will report to the Senior Director and work within an agile application team that develops and maintains highly visible and critical applications. The candidate will have responsibility to design, implement, unit test, document and maintain complex technical software solutions in support of the application development and QA processes. Additionally you will be expected to ensure communications and relationships with customers and cross-team members are professional and meet expectations.
- Develop and implement solutions, based on a set of standards, patterns and processes which establish consistency across the enterprise data, reduce risk, and promote efficiencies in support of the organization’s goals and objectives.
- Developing full stack solutions and continuous delivery frameworks that improve the ability of the IT delivery teams to efficiently deliver solutions with quality.
- Write complex code, building infrastructure as code, work with immutable “cloud” based environments, and build the supporting automated toolsets to test and deploy the systems they develop.
- Responsible for the quality of their work; will develop and implement a set of quality criteria and the associated validation method to ensure that any deliverable meets the expected quality levels of our customers, use quality management to ensure quality levels are maintained, seek new approaches and techniques to improve quality levels, employ reviews and observations to maintain the quality and continuous improvement process, and analyze the impact of quality control and quality assurance on project performance.
- Use metrics to establish feasibility of new initiatives and develop plans, including budget, sequencing and time frames.
- Actively review their own and the team’s work processes and implements improvements seen from other teams or in industry to drive continuous improvement of the team’s efficiency, speed, and quality
- The candidate will also take responsibility for creating design specifications, unit testing, and preparing technical documentation.
- A bachelor’s degree in Computer Science, Engineering or MIS.
- 5-7 years of experience in software systems, programming, database development, and infrastructure development and administration
- 5+ years demonstrated experience with AWS cloud supported programming languages like Java, Node JS, or Python development.
- 2+ years hands-on with AWS Lambda, SNS/SQS, S3, IAM, CloudWatch, EC2, RDS and DynamoDB, AWS CLI
- Ability to use or learn: KMS, ALB/ELB, Route 53, VPC
- Fluency with CI/CD toolsets such as: Jenkins, Ansible, CloudFormation, BitBucket
- Working knowledge of distributed architectural design patterns
- Strong and evolving competence in several programming languages and technologies, working knowledge of multiple tools sets, technologies and implementation environments
- Ability to work independently
- Strong problem solving and analytic skill Ability to handle multiple projects and assignments simultaneously and effectively in a cross-functional team environment
Related Skills & Other Requirements:
- Expertise in the knowledge of programming languages, relational databases, and NoSQL databases
- Experience building infrastructure as code using AWS CloudFormation or similar scripting techniques
- Familiarity with monitoring tool suites like DataDog, SumoLogic, NewRelic, and Nagios
- Experience with Chef, Puppet, Salt, or Ansible in production environments
- Strong practical Linux based systems administration skills and scripting experience in a Cloud based environment
- Experience with automated testing tools (i.e. selenium, Cucumber) are a plus