Software Engineering Manager - Internal Only
University of North Dakota · Grand Forks, North Dakota, United States · $85K/yr
Staffing and Recruiting · 2-10 employees
About the role
This position provides leadership and supervision to the Software Engineering team while overseeing project management and technical support for campus systems. The role involves designing efficient database architectures, developing web applications, and implementing integration solutions to support university operations.
What they look for
Requirements
Candidates must possess a bachelor's degree and at least four years of directly related work experience in software or web development. Proficiency in high-level programming languages, SQL query development, and experience with client/server architecture are required.
Full description
This position is open to internal candidates only. External candidates will not be reviewed or considered.
Salary/Position Classification
- $84,900+ annual, Exempt
- 40 hours per week
- This position will work onsite the Grand Forks, ND campus.
Purpose of Position
This position is responsible for providing high-quality IT support to the University of North Dakota campus and its constituents and ensuring all support is timely and customer-focused. This position supports departmental and campus database systems, web application development/maintenance, integrations, automation, and other software applications. This position is responsible for designing and maintaining highly available and efficient database systems. This position provides management and supervision of the Software Engineer Team with UND's UIT Development Team under the leadership of the Development Team Manager.
Duties & Responsibilities
- Leadership, Supervision and project management for the Software Engineering Team. 
- Provide leadership, supervision, and mentorship to the Software Engineering team. 
- Oversee and manage the progress and performance of the team to ensure they meet project goals and deadlines. 
- Coordinate resources effectively to optimize productivity and efficiency, ensuring proper allocation of time and materials. 
- Foster a collaborative work environment by facilitating communication and teamwork among team members. 
- Identify and address any challenges or obstacles that arise during the development process. 
- Evaluate team members' skill development and provide guidance and support as needed to enhance their abilities. 
- Enforce coding standards, best practices, and quality assurance processes to ensure high-quality deliverables. 
- Implement effective project management strategies to ensure successful project delivery, using relevant tracking systems to monitor progress. 
- Provide specialized technical support to the project team regarding software, databases, and other technologies. 
- Collaborate with other departments and leadership on campus to understand user requirements to evaluate product solutions and to utilize available resources effectively. 
- Provide technical leadership to team members by sharing technical knowledge and innovative practices. 
- Interpret user requirements and translate them into suitable application/database architectures. 
- Implement proper application lifecycle procedures including project requests, functional and technical specifications, interface mockups, database diagrams, data dictionaries, and any other necessary documentation. 
- Ensure all team-assigned support tickets are addressed on time to meet user needs.
- Integration/automation and database development 
- Develop interoperability solutions utilizing APIs and integration middleware, adhering to a service-oriented architecture. 
- Write and optimize complex SQL queries to prepare institutional data for use by other systems and applications. 
- Create and manage batch jobs for data processing and change detection. 
- Improve efficiency by developing automated services to streamline processes and workflows. 
- Adapt third-party software for additional departmental use cases by leveraging vendor APIs. 
- Establish and maintain development infrastructure, including source control, build and deployment processes, and configuration management. 
- Implement monitoring and recovery mechanisms for automation in case of failure scenarios. 
- Conduct research, evaluation, and implementation of new technology solutions. 
- Create comprehensive documentation and diagrams for all services, APIs, and databases within the UIT documentation system
- Web/Application Development 
- Utilize languages such as PHP, JS, HTML, and CSS to design, code, and test technical solutions. 
- Apply object-oriented design principles and patterns to develop modules and interfaces in software development. 
- Build data-driven applications using enterprise frameworks such as Laravel or Symfony. 
- Create and integrate reusable components using modern frameworks like Angular and Vue. 
- Develop functionality and provide support for applications, modules, plugins, or assets used in various systems like Omni CMS or WordPress. 
- Provide maintenance, updates, technical support, and enhancements for third-party software and systems, including content management systems. 
- Offer ongoing support and perform maintenance for all applications. 
- Ensure that applications are regularly updated and patched to maintain system security. 
- Generate documentation and diagrams for all applications within the UIT documentation system. 
- Work with object-oriented programming (OOP) model-view-controller (MVC) frameworks such as Laravel, Symfony, and Code Igniter. 
- Research New Technologies in Development and Assess Their Application for New or Existing Projects 
- Research emerging trends in programming languages, frameworks, methodologies, and best practices to stay up to date with the latest advancements in software development. 
- Analyze the feasibility and potential impact of implementing new tools and ideas in the existing development processes. 
- Conduct small-scale test projects to experiment with different approaches and evaluate their effectiveness in improving processes, code quality, or existing applications. 
- Regularly report findings to the entire team to keep them informed about the latest research and insights in software development. 
- Make recommendations for improvements in processes, tools, or languages based on the research and test project outcomes
- Other Duties 
- Develop and maintain contacts with individuals in key positions relevant to the role. 
- Attend conferences, webinars, and seminars when applicable to stay updated on industry trends and new technologies. 
- Maintain an awareness of current technology trends with the ability to make recommendations when applicable. 
- Maintain and update project statuses in the UIT project management system. 
- Complete and approve timesheets promptly and accurately. 
- Attend departmental meetings to stay informed and contribute to discussions. 
- Serve on campus-wide committees and participate in relevant campus-wide meetings. 
- Ensure confidentiality of information in accordance with applicable compliance requirements such as FERPA, HIPAA, and PCI Compliance.
Required Competencies
- Excellent interpersonal skills and demonstrated excellence in customer service.
- Excellent written and verbal communication skills.
- Ability to communicate with non-technical and technical users.
- Ability to prioritize, multi-task, stay organized, pay attention to detail, and meet deadlines in a changing and demanding work environment.
- Demonstrated ability in problem solving, sound decision-making, and critical thinking skills.
- Ability to work in cross functional teams and communicate with colleagues in both business and technical terms.
- Ability to participate in on-call rotations and on occasion, nights, and weekends.
Minimum Requirements
- Bachelor's degree plus 4 years of directly related work experience
- Experience in creating and maintaining documentation and training employees.
- Experience with SQL query development and relational database software such as MySQL or SQL Server
- Experience in web or software development.
- Demonstratable proficiency in a high-level programming language.
- Experience with data feeds and integrations.
- Experience with client/server architecture.
- Successful completion of a Criminal History Background Check
In compliance with federal law, all persons hired will be required to verify identity and eligibility to work in the US and to complete the required employment eligibility verification form upon hire. This position does not support visa sponsorship for continued employment.
Preferred Qualifications
- Two years previous supervisory experience.
- Experience working in an environment required to maintain confidentiality while working with HIPAA, FERPA, and PCI Compliance.
- Experience working with enterprise virtualization software.
- Experience with Linux and/or recent Windows servers.
- Experience working with cloud technologies including cloud computing, storage solutions, and data warehouse technology.
- Experience with a variety of data formats and API Protocols such as JSON, XML, CSV, and REST/SOAP
- Experience with student information systems, learning management systems, and enterprise resource planning systems.
- Experience with data modeling techniques and their applications.
- Experience working in Higher Education