The Manager of Software Engineering (MSE) will work with the business team and engineering teams in the areas of software delivery, design, and development across strategic initiatives. This position will drive, manage, and deliver high-quality, purpose-built software solutions. This individual will take ownership and provide technical leadership for client development projects by consuming platforms, configuring them for each client, and driving them through the delivery process. They will work closely with Enterprise Architects, System Engineers, and DevOps to ensure that individual program and product strategies align with client and technical objectives. The MSE will lead and drive the development of client applications with development teams, vendors, and the business.
The MSE will interact with the client engagement team, business intelligence team, software architecture team, infrastructure team, DevOps, product owners, and other business stakeholders to approve requirements across the client projects and ensure the requirements from the client fall within the current capabilities of the platform. In addition, the role requires the review of key performance indicators of the development team and vendors to ensure efficiency and identify areas in need of improvement. The role should understand how to use and optimize the products and offerings. They should understand how to configure them to meet the client’s needs and the limitations of deliverables and adhere to the technical specifications of the various projects for smooth execution. The ideal candidate will be a champion of efficiency and process and be the change agent to help to foster a cultural shift in the software development process. Along with driving client development projects, they will focus on improving processes, communication, and collaboration that facilitate iterative improvement, as well as reducing technical debt.
Essential functions of the job include but are not limited to:
- Own client development and implementation projects and drive them through the development delivery process, working to remove blockages, prioritize tasks, and lead developers and vendors toward a timely quality project delivery
- Work with Project Managers to manage and maintain development schedules across both in-house and offshore teams, ensuring minimal downtime and healthy work-life balance for team members
- Manage and measure utilization of developers and vendors and target monthly budgetary targets.
- Point person to hold vendors accountable for following Precision development standards
- Evaluate the development team and vendors against Key Performance Indicators
- Perform risk-based code review of client development and implementation
- Manage the implementation phases across all client projects to ensure successful delivery
- Run the daily stand-up meetings for application development efforts
- Manage client projects delivery and maintenance through Azure DevOps
- Perform productions releases using DevOps CD Pipelines
- Provide technical guidance to clients for existing product offerings
- Partner with engagement managers to perform sprint planning and sprint closing for client deliveries
- Run periodic post-mortem meetings to improve the client development and implementation process
- Represent the Production Support team on all active client projects
- Monitor process and software changes that could impact production support
- Prioritize workload based on ticket priority and provides timely resolutions to issues
- Follow established procedures for change management across applications where changes are necessary
- Document and maintain the production support standard operating procedures.
- Create documentation for common processes that are repeated and can be shared with others.
- Provide daily support with the resolution of escalated tickets and act as liaison to business and technical leads to ensure issues are resolved in a timely manner
- Suggest fixes to complex issues by doing a thorough analysis of the root cause and impact of the defect.
- Coordinate with Application Development Team to successfully deploy software releases in both User Acceptance Testing and Production environments
- 2 years experience managing and scaling agile software development teams along with on-shore and off-shore vendors
- 5 years experience solutioning and delivering software solutions including experience planning and execution.
- Experience with Web-Based Development Frameworks such as ASP.NET, WebForms, MVC, Angular, React, Node.js
- Experience working with GitLab, Azure DevOps, Jira, or similar systems for software development
- Software development lifecycle management, source control, branching, and/or CI/CD pipelines
- Experience with database concepts and data management and SQL
- Excellent organizational, interpersonal, communication, and presentation skills, must be detail-oriented.
- Ability to create and foster relationships within a team-oriented, collaborative environment leveraging excellent communication skills.
- Ability to quickly learn and adapt to new business processes and technologies
- Bachelor’s degree or equivalent desired. Degree in computer science or related fields preferred.
- Hands-on development experience in a Microsoft technology stack
- Experience with Veeva or Salesforce is a plus
- Experience in healthcare technology is a plus