WGU is looking to hire individuals passionate about building a better future for individuals, communities, and the country, and committed to working hard to play their part in building that future. The company is driven by a mission to expand access to higher education through online, competency-based degree programs and is committed to being a great place to work for a diverse workforce of student-focused professionals.
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 assigned part of the system. Appropriately uses design patterns, system decomposition, security, and fault tolerance. A 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.
- 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. Uses data and metrics to analyze Key Performance Indicators.
- Ability to explain the basic value of a system and subsystems to users and how the various subsystems inter-operate to provide features. Able to act as a partner with Operations in solving problems in assigned area.
- 2 years of experience and a proven track record in developing web-based applications and web services using Java, REST, and other web technologies
- Experience interfacing with databases and integrating third party products with existing infrastructure
- Experience with IntellliJ/VS Code, JIRA, GIT
- Experience with Agile/Scrum project development
- Experience with IDM/OSSO, ASP/.Net, DRUPAL, Groovy/Grails, Ruby/Rails, PHP, Hibernate/Seam, Banner, Drools, JBOSS
- Experience with Java or a similar Object-oriented language
- Experience with Application Integration with legacy systems
- Experience with Cloud-Native Development, and/or Porting/Refactoring of On-Site to Cloud (preferably AWS)
- Experience with Javascript/Typescript and a modern UI framework such as Angular, React, or Vue.js
- Experience with Oracle or other database interfaces
- Technical Certifications
Responsibilities
- Maintains accountability for small, easily contained, and controlled components within application architecture under guidance of team leadership.
- Maintains accountability for quality in their assigned area and success of assigned projects for on-time, on-budget, and on-scope delivery.
- Applies strategies and tools to plan and execute testing strategies to find the ‘sweet spot’ that maximizes quality while minimizing costs. Demonstrates the ‘good enough’ principle that balances quality and time to implement.
- Interprets functional and non-functional requirements into designs and code that meet those specifications. Identifies gaps, risks, and deficiencies in such requirements and proposes solutions.
- Writes technical requirements that can be interpreted by others into system realizations.
- Performs other job-related duties as assigned.
Other
- Demonstrates familiarity or introductory knowledge of competencies of software engineering.
- Contributes formally and informally to effectiveness of the team.
- Speaks authoritatively and accurately with respect to questions related to their area of ownership.
- General awareness, even if through personal experience, of higher education landscape particularly with on-line education delivery.
- Willingness to try new things as directed and adopt innovative ideas when presented.
- Ability to contribute to a strong and cohesive team through professional interactions.
- Ability to engage others at the right level and right time. Communicates effectively in group settings by knowing audience, listening effectively, and being responsive. Identifies problems and escalates appropriately.
- Ability to identify risks and discuss impact with more senior engineers or managers.
- Bachelor's Degree in Computer Science, Information Technology, or related field
- Equivalent relevant experience performing the essential functions of this job may substitute for education degree requirements. Generally, equivalent relevant experience is defined as 1 year of experience for 1 year of education and is the discretion of the hiring manager.