
Tech Lead Mobile Software Engineer
- Salt Lake City, UT
- Permanent
- Full-time
Grade: Technical 411Pay Range: $157,000.00 - $243,400.00Job DescriptionThe Tech Lead Mobile Software Engineer is a position of technical expertise, influence, and leadership in the technology realm. The position will be required to apply their expert knowledge to ensure best practices and well-engineered architecture across the department. They will also be a key stakeholder and initiator of major changes to processes, engineering practices, and system administration. This position will be required to work in a space of solving critical issues and initiatives across multiple teams. It will require an extensive and deep understanding of cutting-edge practices and innovative approaches to problems. Principal Software Engineers are also tasked with establishing and maintaining a positive and productive culture based on the WGU Leadership Principles.Job Duties
- Technical development using the following: Angular 2 or later, mobile including iOS Android, React Native and Flutter
- Acts as an expert in multiple areas of mobile software engineering.
- Maintains accountability for quality of services in multiple areas and teams for the success of assigned project for on-time, on-budget, and on-scope delivery.
- Contributes as a lead or consultant for their domain area or multiple teams. Is a ‘go-to’ person in at least one sub-discipline and competent and trusted in several other disciplines or application areas.
- Contributes formally and informally to the effectiveness of teams through formal and informal mentoring and direction during team meetings and problem solving.
- Contributes and often identifies systemic issues to be solved and contributes to the resolution of the same.
- Actively ensures that engineering has the skill sets they need to be successful with current and future technologies.
- Acts as a planning consultant for Portfolio or Ed Tech as a whole, when identifying technical risks and dependencies. Identifies problems far in advance, finds multiple solutions, and recommends the preferred solution to teams and to management.
- Speaks authoritatively and accurately with respect to questions related to their area of ownership or for the platform, as a whole.
- Actively improves operational excellence measured by availability of the platform to students, faculty, and staff.
- 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.
- Understands implications of functional and non-functional requirements on the system. Identifies deficiencies in requirements and works with product owners to provide alternatives.
- Performs other job-related duties as assigned.
- Expert 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 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 platform problems at a system level. Knows what the system can and cannot do.
- Ability to demonstrate a sense of urgency when looking for solutions to problems
- Understands the general higher education landscape, particularly with on-line higher education, including competitive landscape, opportunities, and feature gaps.
- Ability to identify innovative ideas or technologies that represent opportunities to advance the capabilities of the university education platform, our efficiencies in improving out platform, or both. Can leverage change management processes to drive adoption.
- Ability to make the team stronger and more cohesive
- Strong communication skills with the ability to engage others at the right level at the right time. Communicates effectively in group settings by knowing audience, listening effectively, and being responsive. Presents solutions not just problems and effectively manages expectations.
- 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.
- Bachelor's Degree in Computer Science, Information Technology, or related field
- 10 years of experience in software development; pioneering new approaches and technologies in engineering
- Experience in mobile applications development including iOS, Android, Native React and Flutter
- 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.
- Master's Degree or PhD in Computer Science, Information Technology, or related field
- Technical experience in any of the following: Angular 2 or later, mobile including iOS Android, React Native and Flutter
- Experience with salesforce development lifecycle techniques
- Experience architecting, implementing, and managing enterprise-level solutions
- Experience with distance education and distance learning students
- Technical Certifications