We're looking for an experienced Director of Software Engineering to coordinate development of Open Education’s full technology stack to develop and deliver the next generation of online education. The ideal candidate will have the vision of a software architect and the skills to generate production-quality code for web-based and mobile applications. They will be given top-to-bottom responsibility for all aspects of development - web, database, mobile, and integration with Open Education’s software partners. They will be asked to map the future direction of the company's development efforts, but they must be willing to also act as an individual contributor.
The Director, Software Engineering will provide technical leadership, vision, direction, and mentoring for the software engineering team. This individual will manage multiple teams which design, develop, and support applications to meet business requirements. The Director, Software Engineering will deliver product and feature roadmaps and provide overall leadership and day to day management for a team of software development professionals. Additionally, they will provide resource planning and project scheduling using Agile/Scrum software development methodologies.
ESSENTIAL FUNCTIONS AND RESPONSIBILITIES
- Meets business needs by managing the activities of developers consistently delivering quality solutions on-time, within budget, and scope.
- Works with internal customers to gather business processes and project requirements.
- Actively drives the development life-cycle from requirements analysis, feasibility estimates, design, code, documentation, testing, implementation, and support.
- Develops project plans, resource planning, scheduling and manages development timelines.
- Builds and manages multi-disciplined software teams and oversees the development processes using industry best practices.
- Responsible for design reviews, code reviews, and mentoring the software development team, as well as individual code contributions.
- Supports change management process to manage software releases, application patching and changes to production configurations.
- Manages multiple tasks and responsibilities in high-pressure environments; excelling at pinpointing and resolving problems in early project stages to avoid cost/time expenses.
- Develop and manage a balanced approach to internal versus off-shore resourcing.
- Oversight and management of department expenses and budget planning.
- Strong people and management skills to interact with staff, colleagues, cross-functional teams and third parties.
- Ability to drive a culture of quality and personal accountability through development and delivery teams.
- They must have a commitment to quality through the ability to translate complex technical requirements into functional software using best practices.
- Expertise in vendor contract management and management of distributed development teams and resources.
- Expert in Agile methods including SCRUM and TDD.
- Experience in application architecture and making rational buy vs. build and interface decisions.
- Excellent verbal and written communication skills and the ability to work equally well in self-managed and team-based Agile/Scrum projects.
- Deep technical knowledge of web applications using web services (REST/SOAP/SOA/XML/HTML) and a Java-based stack.
- They must be willing to “roll up the sleeves” and personally address opportunities or challenges.
- 8+ years of Enterprise level Application development with experience both as a hands-on programmer and software development manager.
- 5+ years of experience managing multiple teams with interactions across multiple, geographically dispersed sites.
- 5+ years of managing contract vendors including contract definition and review, vendor score-carding, RFI/RFP processes and ongoing vendor relationship management.
- Bachelor of Science Degree (Masters preferred) in Computer Science, Information Technology or related field.
Other required technical experience:
MySQL, Postgres or other database interface experience.
Mobile/Hybid Apps. Student Information Systems.
CRM systems, ideally Salesforce.