The Principal Software Engineer works independently or leads teams of 5 or more people responsible for application design, development, testing, and problem resolution work teams with significant autonomy and independence. The scope of work typically includes major system projects that cross functional boundaries and support company-wide mission-critical business operations. As an experienced developer and an experienced technical leader the position provides mentoring and guidance to the other members of the team.
The position represents management in project team meetings, daily operations reviews, and applicant interviews. The position may provide supervisory coverage while the team manager is out of the office.
Applications may include custom developed software, commercial packaged software, or open-source software. Software may consist of on premise applications, cloud-based software and services, hybrid configurations, integration tools, or business workflow tools.
*This position has the opportunity to be permanently remote*
- Leads teams of 5 or more people across team boundaries that develop, test, and fix defects in application software.
- Provides mentoring and leadership in the preparation and review of application software designs for multiple work teams. The scope of design will frequently include multiple systems supporting mission-critical company-wide business processes.
- Leads cross-functional work teams in preparing work estimates and project schedules for all technical work on projects. Projects frequently span multiple teams and business units in the company. Mentors team members in the development of work plans.
- Leads work teams in resolving complex problems which are frequently unique, require creative problem solving and advanced technical skills, and frequently span multiple systems and frequently cross team boundaries. May also work on systems with no prior or current knowledge by relying upon expertise of team members. Provides technical leadership during critical outage events.
- Develops and leads programs to train technical staff on the systems and tools within the scope of the team's responsibility. Develops recommendations for improvements to business process owners in the use and modification of system software. Maintains expert-level knowledge of software development best practices, tools, and methodologies that are recognized outside the company in the industry.
- Initiates programs and leads teams focused on quality and continuous improvement initiatives across business units within the company. Independently directs the implementation of smaller improvement initiatives and makes recommendations to management on larger scope and/or budget initiatives. Uses expert knowledge of industry and competitive marketplace to inform recommendations.
- Bachelor’s degree (or higher) –OR- 4+ years professional work experience.
- 6+ years experience in software development or testing.
- Knowledge of software development methodologies, practices, and tools.
- Knowledge of project management methodologies, practices, and tools.
- Knowledge of one more programming languages used by the team.
- Knowledge of software testing practices and tools.
- Knowledge of problem solving techniques and tools.
- Ability to travel as needed for company business and professional development.
- Ability to work nights and weekends as needed for system implementations and resolving system problems.
- Knowledge of business analysis practices and business process modeling.
- Knowledge of quality management and quality improvement practices.
- Knowledge of team leadership skills, practices, and behaviors.
- Knowledge of techniques, tools, and applicable laws to conduct effective and legal interviews.
- Knowledge of techniques for writing and presenting business proposals to management.
- Knowledge of techniques to establish business relationships with outside vendors.
- Knowledge of effective writing and public speaking skills. Ability to convey complex information to general audiences.
- Knowledge of company policies along with state and federal employment laws relevant to supervisory duties.
- Knowledge of techniques and models for initiating and promoting change (e.g. organizational, process, policy.)