WGU is looking to hire a Senior Software Engineer to research, design, develop, analyze, test, and implement software operating or application systems to help expand access to higher education through online, competency-based degree programs.
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. Appropriately uses design patterns, system decomposition, security, and fault tolerance.
- demonstrated capability in one or more design methodologies, such as Object-oriented design, Function-oriented design, data-centered design, and the notations appropriate for each.
- Ability to understand differences, strengths, and weaknesses of various Software Development Life Cycle models, and practical considerations of options
- Thinks of and designs for scale, reliability, and cost in a public cloud environment. Uses data and metrics to analyze Key Performance Indicators.
- Experience in web-based applications and web services using Java, REST, ServiceNow, Angular, and other web technologies, including experience interfacing with databases, and integrating third-party products with existing infrastructure.
Responsibilities
- The Senior Software Engineer is responsible for the research, design, development, analysis, testing, and implementation of software operating or application systems.
- They communicate project information to the client, the project manager, or other design personnel working on projects.
- They write and maintain complete documentation.
- Acts as an expert in assigned areas of software engineering.
- Mentors other more junior engineers to be more effective in their role.
- Contributes as a lead or consultant for at least one team.
- Interprets functional, non-functional, and implied requirements into designs and code that meet those specifications.
Other
- They maintain good working relationships with clients and staff.
- They support team members and ensure established goals and deadlines are met.
- They keep management informed of status and significant problems.
- Maintains accountability for the quality of services in their assigned area and the success of assigned projects for on-time, on-budget, and on-scope delivery.
- Strong communication skills with the ability to engage others at the right level at the right time.