As a Software Engineer, the ideal candidate will have designed, developed, unit tested, implemented and documented solutions that include not only the code to supports business functionality, but also the underlying infrastructure required to run that code and the systems required to deploy it. The candidate will have also standardized and tuned the patterns and components in the complex system for use in other systems. The candidate will also possess technical skills and experience in the virtual infrastructure domain, specifically Amazon Web Services. The preferred candidate would also have knowledge and experience with continuous delivery systems. The candidate is responsible for the analysis of user stories, testing applications, developing test plans, test cases and test scripts, and evaluating test results to determine compliance with test plans and established business processes.
The candidate will report to the Sr Director and work within agile application teams that develops and maintains highly visible and critical applications. The candidate will have responsibility to design, implement and tune various software patterns to be used within the applications. They will also be expected to help others on the team use those patterns within the application. As an Agile team member, from time to time, they may be called on to implement, unit test, document and maintain complex technical software solutions in support of the application development and QA processes. Additionally, they will be expected to ensure communications and relationships with customers and cross-team members are professional and meet expectations.
This is an opportunity for you to design and implement high-quality solutions that enable product and service delivery in support of the College Board’s mission, strategy, goals, and objectives. You'll be surrounded by people who are like you; wickedly smart, passionate about the cloud, and know that the work that they are doing today supports the next generation of thought leaders and their future
What you’ll do
- Develop and implement 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.
- Develop and implement solutions, based on that set of standards, patterns and processes.
- Developing full stack AWS Cloud solutions and continuous delivery frameworks that improve the ability of the CB 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 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.
- Experience with both manual and automated test designing required. Develop test strategies and plans and maintain test data
- Experience with both manual and automated test designing required
- Strong problem solving and analytic skill Ability to handle multiple projects and assignments simultaneously and effectively in a cross-functional team environment
- Ability to work independently and in Agile teams. Scrum Team Member attitude – willingness to support the Team to be successful in any area necessary
- A bachelor’s degree in Computer Science, Engineering or MIS.
- Performs system quality assurance testing by executing test plans. Reports, documents, and tracks resolutions for software “Defects” identified in the testing process using approved tools and processes
- Develops automated test scripts using Selenium, Cucumber. SoapUI testing tools
- Excellent skills with writing and analyzing complex SQL queries
- 3+ years of experience in software systems, programming, database development, and infrastructure development and administration
- Minimum 3 years demonstrated experience with full stack development.
- 1+ years demonstrated experience with AWS cloud supported programming languages like Java, Node JS, React JS, Angular JS or Python development.
- 1+ 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, Cucumber Hippie/Supertest, Chai experience a plus
- Working knowledge of AWS Serverless architecture
More about you
- 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