The Lead Principal Software Engineer supervises and provides technical leadership to a team of Software Engineers within the Information Technology Services Division (ITS) of the Colorado Judicial Department through hands-on direction of project development.
This classification is distinguished from Software Engineer series by the responsibility for supervising professional software engineering staff, making higher-level decisions, and performing the most complex software engineering functions. This classification reports to the Manager of Software Architecture & Design.
Writes efficient, concise code that is stable, extensible, and unit tested.
Communicates frequently with software engineers and other ITS staff to coordinate work and team goals.
Plans, executes, and manages the integration of new applications, including SaaS and in-house solutions, into existing systems and software throughout the enterprise.
Creates detailed technical design for enterprise solutions.
Diagnoses complex software engineering and system issues. Evaluates, recommends, and executes the best resolution.
Provides technical leadership to software engineering team and recommends direction on integrations to the Manager of Software Architecture & Design.
Implements new requirements within the Department’s Agile delivery methodology while following established ITS architectural principles.
Develops detailed technical application requirements and collaborates with project/development teams to ensure the delivery of quality products, features, and user experience.
Writes code that meets business requirements, design specifications, and anticipates potential errors or issues.
Provides input into the architecture and design of existing and new products.
Practices daily paired programming and test-driven development in writing software and building products.
Ensures integration planning and practices are aligned with strategic business goals and the Department’s overall strategic vision.
Establishes continuous integration, continuous delivery, and continuous deployment pipelines and practices.
Maintains positive working relationships with software engineering, QA, PMO, and infrastructure teams, and seeks to understand application architectures and required functionality.
Coaches software engineering team. Shares knowledge and expertise with staff and ensures project learnings are documented and shared among the team.
Establishes expectations and provides employee performance feedback on an on-going and annual basis. Assists subordinates in establishing goals. Evaluates subordinates' goal achievement through conferences or informal meetings.
Assigns duties and responsibilities to staff; develops and establishes procedures for operating and maintaining Department systems and applications.
Attends meetings and trainings as required.
Other duties as assigned.
Has supervisory accountability for other employees, volunteers, or interns. Plans, directs and coordinates activities for a unit. Duties include scheduling and assigning of work, training in all facets of work, quality control, and decisions impacting the pay, status and tenure of others. Conducts performance appraisals, and provides input into and participates in discipline, dismissal, and hiring processes.
A bachelor’s degree from an accredited college or university and six years of experience in software engineering. At least one year of lead/supervisory level experience is strongly preferred.
OR
Additional experience may substitute for education on a year for year basis with six years of experience. At least one year of lead/supervisory level experience is strongly preferred.
While performing the duties of this job, the employee is regularly required to sit and talk or hear. The employee must occasionally lift and/or move up to 25 pounds.
This position is subject to many interruptions and may be required to handle multiple calls and inquiries at once. The noise level in the work environment is usually moderate.