Lead Software Engineer
The Consortium, Inc.
- Reston, VA
- AWS - Dynamo
- AWS - Lambda
- AWS - S3
- AWS - SNS/SQS
- Node.js Development
Position: Lead Software Engineer
Team: Data I/O - Data Streaming team - they process on incoming and outgoing assessment data plus a multitude of other items. They are rebulding a legacy on prem system that was written in Java and hosted via Weblogic (batch processed) to a high performing cloud application (streaming process).
Process: Submissions: please give a brief overview of similar experience > .5 video w/mgr > 1.0 video w/team > verification/remote onboarding (need address, phone, email - equipment rcvd. Friday before (please confirm) > remote start (9am log in for mgr instructions)
The Lead Software Engineer is a senior team member responsible for leading, guiding, and mentoring a team of technologists of varying skill levels to successfully implement complex and performant cloud-based software solutions. The successful candidate must be a highly skilled and motivated Software Engineer possessing leadership skills along with extensive knowledge and expertise designing, implementing, and testing highly scalable and fault-tolerant serverless and container-based apps executing in the cloud. The successful candidate keeps abreast of emerging technologies and is a fast learner.
The successful candidate will work closely with Enterprise and Solution Architects to design cloud-based solutions that provide automation support for College Board programs and initiatives. Other responsibilities include assisting the Technical Manager with long-range planning, working with the Scrum Master to conduct sprint planning based on product roadmap and delivery schedule, and supervising feature development activities.
ESSENTIAL FUNCTIONS AND RESPONSIBILITIES
- Provides technical leadership, guidance, and direction to all team members while assuring the College Board Cloud Foundation guidelines are met and the College Board Cloud Center for Excellence best practices are followed.
- Possesses expert knowledge and experience in component-based and object-oriented design and programming.
- Possesses strong knowledge and experience designing microservices and/or container-based applications in the cloud that are component-based, cost-effective, resilient, scalable, support concurrency and code reuse.
- Demonstrates ability to solve complex problems using divergent thinking resulting in innovative solutions.
- Practices test-driven development ensuring 100% code coverage by automated unit and integration testing.
- Continuously evaluates and adjust the team’s software development processes and tools to improve software quality and team efficiency.
- Continuously evaluates technology stack to ensures languages, frameworks, and tools are relevant for cloud-based development and are up-to-date.
- Works closely with Technical Manager, Product Owner, and Requirements Analyst to ensure functional, system, and data requirements are clear, concise, and understood by team.
- Possesses strong verbal and written communication skills demonstrated by ability to successfully communicate technical details to audience comprising business, technical, and executive staff.
Establish and maintain frequent communication with teams and units within the College Board. Maintain contacts with staff in all other departments as required.
Interact with external customers and vendors as needed.
Bachelor’s degree in Computer Science, Systems Engineering, Information Systems is required.
7 + years of directly-related work experience in a professional position in software development or a related field.
Related Skills & Other Requirements:
- Minimum 7+ years of professional experience designing, building, and managing web-based applications and cloud-based, internet-scale applications.
- Expert knowledge of microservice architecture and design patterns.
- Expert knowledge and experience in component-based development. Candidate can clearly distinguish between component-based vs object-oriented development.
- Expert knowledge and experience in asynchronous programming and event-driven messaging.
- Strong knowledge of AWS cloud ecosystem. AWS Certified Developer, AWS Certified Solutions Architect, or AWS Certified DevOps Engineer certification is a plus.
- Strong knowledge and experience with test-driven development to include hand-on experience with automated testing tools such Mocha, Jest, Chai, JUnit, Pytest, Cucumber, Selenium.
- Strong knowledge of relational (SQL) and noSQL database technologies.
- Strong knowledge and experience working in an iterative development environment using Agile/Scrum. Experience establishing and evolving lean, agile development processes.
- Experience in establishing 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 required along with a strong focus on customer service and the ability to clearly discern client needs.
- Ability to effectively coordinate and multiple responsibilities simultaneously with fast, flexible work style.
- Knowledge of Higher Education related software applications is a plus.
Tuesday, May 25, 2021