Senior Software Engineer
The College Board, a national educational organization, is conducting a search for a Senior Software Engineer, who will be resident in our Reston, Virginia office.
The Senior Software Engineer is responsible for the design and development of application software within the College Board's Information Technology Business Delivery group. The successful candidate will be a seasoned full stack software engineer with extensive knowledge and experience in designing and building complex, highly scalable and dependable application systems using Java/J2EE based technologies and deep knowledge of cloud-based architecture and technologies.
The candidate will interact closely with the Scrum Master and other members of the development team to shape, identify, prioritize, and realize the requirements in the delivery of business solutions.
Successful candidates will have a comprehensive knowledge of web front-end and back-end development tools, technologies, practices, and standards; proven ability to integrate large scale systems or third-party products; and a track record of delivering high-quality, web-based business solutions in a timely and effective manner.
- Follows established coding standards and other enterprise processes, both individually and at a team level. Must ensure proper code reviews are held for the project
- Assists with backend code development and integration in Java, Python or Node in AWS environment.
- Understands Web optimization and security techniques and implement enhancements
- Drives applications Web layer platform architecture to future state, while working with the team and the Enterprise Architecture group
- Contributes to the engineering team’s culture of high code quality. Accountable for the quality of code that is delivered to QA and production and must ensure that appropriate code reviews and unit testing are adequately performed.
- Ensures that continuous integration is performed on the application source code and constantly seeks to enhance the continuous integration methods of the development team to ensure high quality of code.
- As member of an Agile development team work closely with Product Owners and Consumer to gain thorough understanding of requirements to ensure code is properly implemented. Also must seek ways to meet the underlying business requirements with low-cost, yet highly re-usable patterns and actively escalate requirements that may cause unnecessary risk or cost
- Ensure that application code adheres to enterprise and industry standards and best practices.
- Thorough understanding of implementing accessibility and progressive enhancement presentation layer coding practices. Works with Interface Design Architects to assure accessibility standards are met at a code level.
- Responsible for support of and coordinating with other teams such as Security, Technical Operations, Enterprise Operations, etc.
- Assists with project planning and estimating of initiative scope items. Reports hours daily to administration for billing purposes.
- Bachelor’s degree required.
- At least 10 years of directly-related work experience in a professional position in software development
Related Skills & Other Requirements:
- Experience in test-driven development.
- Experience with test automation tools and processes to include Selenium and Cucumber
- Experience working in an agile/scrum iterative development environment.
- Aggressive problem diagnosis and creative problem-solving skills
- Backend development experience using Python, Java or Node.
- Experience using and developing on Windows and Linux platforms
- Experience working in CICD environment is a plus, including build tools such as Gulp/Grunt/Webpack
- Deep knowledge of Cloud and AWS platform
- Working knowledge of SQL and NoSQL
- Experience in adhering to software development guidelines and in performing code and design reviews
- Experience in documenting design and architecture artifacts and presenting artifacts for architectural review
- Effective communication skills are a must along with a strong customer service orientation, and the ability to clearly discern client needs.
- Ability to effectively coordinate multiple responsibilities simultaneously, with fast, flexible work style.
- Knowledge of K-12 or Higher Education related software applications is a plus