Leads and manages the design, development, implementation, testing, and launch of robust and scalable back end software across Horizon 3 programs. Manages the development of back end software engineering processes and procedures, and manages the evaluation and adoption of leading-edge back end software development systems and tools. Supports the sustaining engineering of back end software, including software maintenance and debugging. This role is responsible for directing and overseeing the activities of teams of back end software engineers as well as back end software development vendors responsible for the design, development, implementation, testing, and launch of back end systems.
- Leads and manages the activities of teams of back end software engineers and software development vendors responsible for the design, development, implementation, testing, and launch of robust and scalable back end software across Horizon 3 programs
- Leads and manages the design, development, and optimization of back end services, back end system architectures, and scalable cloud-based distributed systems to support business needs and product requirements
- Support collaborative efforts with the product, design, front end software, and other teams to capture and understand end-user product requirements, formulate use cases, and then translate those into pragmatic and effective technical solutions for back end systems
- Manages the development of back end software engineering processes and procedures
- Manages the evaluation and adoption of leading-edge back end software development systems and tools
- Works cross-functionally to develop a project plan and a risk management plan for back end system development to deliver business needs and product requirements on schedule and within budget
- Fosters and supports sharing of product ideas, technical solutions, and novel developments through design reviews, code reviews, technology discussions, and brainstorming sessions
- Leads and manages testing and validation of back end software and systems, including the use of automated testing tools
- Manages the design and development of robust APIs to support mobile and desktop clients
- Communicates with senior management to understand evolving business needs and product requirements. Communicates with direct reports and peers in management and at customer organizations and vendors to impart and interpret information and improve cross-functional processes and programs. Communicates technical information to cross-functional teams in an effective manner.
- Utilizes a proactive and responsive approach to problem-solving. Provides reasoning about complex problems, and applies experience to new domains.
- Effectively communicates with team members, managers, product owners, stakeholders, and non-technical support staff regarding back end software and system project plans, risk management plans, engineering specifications, critical project risks, test plans and reports, status updates, and overall progress of back end software development. Builds and enhances key internal and external contacts.
- Implements policies and defines approach to achievement of back end development goals to support business needs and product requirements. Analyzes long-term impact of new or anticipated strategies and decisions.
- Manages budgets, operational plans, critical risks, and performance requirements for back end software development. Responsible for meeting budgetary goals and objectives.
- Leads teams and facilitates communication between staff, management, vendors, and other technology resources within and outside of the organization. Shares highly complex information related to areas of expertise. Interacts with senior management to keep abreast of objectives.
Bachelor’s degree in Computer Science or in engineering and at least 8 years of experience in software engineering OR a High School Diploma/GED and at least 11 years of experience in software engineering
At least 4 years of experience in back end software engineering
At least 3 years of experience in hands-on coding and software design
Experience with all phases of the software development life cycle as well as best practices and Agile software development
Experience with development on one or more major cloud platforms such as Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform, and Alibaba Cloud
Experience with one or more object-oriented programming languages such as Java or Ruby
Experience with Linux/Unix and one or more scripting languages such as Python, Perl, shell scripting, etc.
Experience with one or more common database systems
Experience with object-oriented architecture and design
At least 5 years of experience contributing to financial business decisions in the workplace
At least 5 years of direct leadership, indirect leadership, and/or cross functional team leadership
Willing to travel up to 10% of the time for business purposes (within state and out of state)
Master’s degree or doctorate degree in Computer Science, Software Engineering, or a related field, including a significant independent research project
Experience with front end development with Salesforce, especially Salesforce Health Cloud and Salesforce Commerce Cloud
Experience building full stack applications (front end and back end)
Understanding of site/software accessibility, security compliance measures, application security, and incident management
Experience with container deployment (e.g., Docker, Kubernetes)
Experience developing or deploying machine learning models
Experience designing RESTful APIs, specifically for mobile apps
Experience with medical device software development and associated documentation for regulatory submissions