WGU is seeking to expand access to higher education through online, competency-based degree programs and needs a skilled software engineering expert to help maintain and improve their education platform, ensuring scalability, reliability, and innovation in a cloud-based environment.
Requirements
- Understanding of the processes associated with software development, including Planning, Measurement, Coding, Testing, Reuse, Tools, Abstraction, Algorithms and Complexity, Security, and basic system understanding.
- Ability to employ the tools and techniques related to an engineering discipline, such as database management, user interface development, inter-process communications, etc.
- Ability to create designs that can be realized in code that achieve functional and non-functional requirements for an application or at the system level.
- Ability to understand differences, strengths and weaknesses of various Software Development Life Cycle models, and practical considerations of options.
- Understands implications of Software as a Service in the creation of software systems. Thinks of and designs for scale, reliability, and cost in a public cloud environment.
- Experience with web-based applications and web services using Java, REST, ServiceNow, and other web technologies, including experience interfacing with databases, and integrating third party products with existing infrastructure.
- Experience with Cloud-Native Development, and/or Porting/Refactoring of On-Site to Cloud (preferably AWS)
Responsibilities
- Acts as an expert in assigned areas of software engineering. Mentors other more junior engineers to be more effective in their role.
- Maintains accountability for quality of services in their assigned area and success of assigned projects for on-time, on-budget, and on-scope delivery.
- Contributes as a lead or consultant for at least one team. May be a ‘go-to’ person in a particular sub-discipline or application area.
- Leads teams or cross-functional groups in identifying and transferring knowledge through formal and informal means (formal presentations, internal white-papers, etc).
- Applies strategies and tools to plan and execute testing strategies to find the ‘sweet spot’ that maximizes quality while minimizing costs.
- Interprets functional, non-functional, and implied requirements into designs and code that meet those specifications.
- Contributes directly, and leads others, in rapid identification of system problems minimizing time to restoration of services.
Other
- Bachelor's Degree in Computer Science, Information Technology, or related field
- 6 years of experience in software development; pioneering new approaches and technologies in engineering
- Master's Degree or PhD in Computer Science, Information Technology, or related field (preferred)
- Strong communication skills with the ability to engage others at the right level at the right time.
- Ability to identify, mitigate, or avoid risks and works closely with leads or managers to make sure that such risks and dependencies are understood, accounted, and planned for through an appropriate strategy.