Release & Delivery Management of a Portfolio Management System (PMS) — for Major Swiss FinTech Software Product
- Goal: Achieve seamless, scheduled maintenance and version upgrades for a suite of financial technology products PMS, thereby enhancing system reliability (bug fixing) and feature availability.
- Results: delivery of +300 releases / yearly within budget & timeline.
- Budget: R&D, +14’000 man-day / yearly.
- Staff: 20 people full-time, +150 people approx. 30% activity.
- Timeline: full-time activity for 12 years.
- Staff: Team of 4 delivery managers, 5 DevOps engineers, +10 team leads in development and Q&A, 1 documentation specialist.
Achieved goals
- Hands-on oversight of source control and build processes for a half-decade — solid processes still in place 20 years later.
- A 12-year tenure in orchestrating end-to-end software deliveries, ranging from minor patches to major version upgrades.
- Facilitation of alpha and beta product releases to the consumer market.
- Execution of release candidate versions, serving as the final quality assurance step before full-scale deployment.
- Leadership and mentorship for a team of 4 (four) delivery managers.
- Collaborative engagement with cross-functional teams, including DevOps, software development, quality assurance, and product management (+150 people).
- Diligent administration of budgetary constraints, risk landscape, content milestones, delivery timetables, and stakeholder reporting.
- Prioritization of various operational excellence facets, including process standardization, system stability, software quality, cybersecurity measures, third-party software compatibility, ongoing enhancements, and effective communication channels.
- A consistent track record of delivering over 150 software versions annually, adhering to both budget and delivery schedules.
- Utilization of Bamboo and Jenkins for orchestrating daily incremental and full builds, spanning both Unix (IBM, Solaris, Redhat) and Windows platforms.
- Daily execution of product installations, version upgrades, and a diverse array of test suites, both manual and automated.
- Curating both manual and machine-generated documentation to ensure comprehensive and up-to-date reference materials.
Risks & difficulties
- Configuration errors: Inconsistencies in software configurations across environments leading to unanticipated behaviour.
- Mitigation Strategy: Utilize Configuration Management tools and maintain version-controlled configuration files. Ensure strict protocols for changes in configuration.
- Code Regression: New code deployments might inadvertently break existing functionalities.
- Mitigation Strategy: Implement automated regression testing as part of the CI/CD pipeline to catch such issues before they reach production.
- Unresolved Dependencies: Failure to account for interdependent software components can stall or break the release.
- Mitigation Strategy: Dependency mapping and automated dependency checks during the build process.
- Data Migration Errors: Risk of data corruption or loss during the release process, especially if it involves database schema changes.
- Mitigation Strategy: Database versioning, automated backups, and comprehensive data validation checks. Separate database changes from application changes.
- Rollback Failures: Inability to revert to a stable version of the software in case the new release is faulty.
- Mitigation Strategy: Pre-configured automated rollback procedures, coupled with real-time monitoring for triggers.
- Security Vulnerabilities: New releases could open up system vulnerabilities if not properly vetted.
- Mitigation Strategy: Integrate security scanning tools within the CI/CD pipeline and adhere to secure coding practices.
- Lack of Stakeholder Communication: Poor communication with stakeholders can lead to misaligned expectations and chaos during release.
- Mitigation Strategy: Maintain a release dashboard accessible to all stakeholders and implement automated notifications for key release milestones. Usage of stage gates and gate exit criteria as part of the SDLC.
- Talent and Skill-Set Mismatch: Team members might lack the necessary skills to manage complex releases effectively.
- Mitigation Strategy: Skill assessment and targeted training programs, potentially augmented by external consultancies for specialized roles. Use Agile methods like pair programming and code reviews.
- Coding Deadline Overrun: Exceeding coding deadlines can create a cascading effect, disrupting subsequent phases like testing, integration, and deployment. This amplifies the risks associated with tight delivery timelines and could lead to compromised quality or missed market opportunities.
- Mitigation Strategy: Implement Time-Driven Activity-Based Costing (TDABC) to gain granular insights into task durations and identify bottlenecks. Use predictive analytics to foresee deadline risks and dynamically reallocate resources. Establish a “buffer zone” of time within the project timeline specifically designed to absorb such overruns without affecting the overall delivery date.
- Tight Delivery Timelines: Constrained timelines can lead to rushed processes, compromising code quality, testing completeness, and stakeholder communication. This approach can exacerbate other operational risks, as there may not be sufficient time to address issues before the release.
- Mitigation Strategy: Implement Agile methodologies with a focus on time-boxed sprints and early risk identification. Employ parallel development and testing streams to optimize the utilization of time. Additionally, ad-hoc “War Rooms” can be established for crucial releases to manage time-sensitive complexities in real time.
- Frequent Scope Changes: Constant alterations to the project’s objectives or feature set can lead to resource misallocation, delayed timelines, and increased complexity. This is particularly precarious in Agile settings where the scope is designed to be flexible but within bounded iterations.
- Mitigation Strategy: Utilize a Change Control Board (CCB) involving key stakeholders to evaluate and approve scope changes. Implement a dynamic but controlled backlog management system where changes are batched and prioritized for subsequent sprints rather than disrupting ongoing work. Additionally, leverage feature toggles to accommodate changes without altering the core codebase.
- Vendor or Third-Party Failures: Reliance on external services or libraries can introduce instability if these components fail or change unexpectedly.
- Mitigation Strategy: Diversify dependency sources and implement a vendor risk management framework. Perform regular audits of third-party services for reliability and security.
- Incomplete Documentation: Poorly maintained or incomplete documentation can hinder troubleshooting, new team member onboarding, and future development.
- Mitigation Strategy: Implement a “Documentation as Code” approach where documentation is updated in tandem with code changes. Conduct periodic documentation reviews.
- Cultural Resistance to Change: Opposition from team members, both offshore and onshore, towards adopting new tools or processes can slow down the release cycle.
- Mitigation Strategy: Change management practices such as internal workshops, pilot testing, and transparent communication to ease the transition.
- Audit and Compliance Failures: Lack of adherence to industry standards and regulations can result in legal repercussions and loss of trust.
- Mitigation Strategy: Integrate compliance checks into the CI/CD pipeline and conduct regular internal and external audits.
- Insufficient Testing Coverage: Inadequate testing — be it unit, integration, or end-to-end — can result in undetected bugs, vulnerabilities, or performance issues making their way into the released product. This poses significant risks, ranging from reduced user satisfaction to legal consequences in extreme cases.
- Mitigation Strategy: Employ Test-Driven Development (TDD) to integrate testing into the development process itself. Leverage automated testing frameworks to maximize coverage without requiring proportional increases in time and manpower. Establish Key Performance Indicators (KPIs) specifically for test coverage and quality metrics, making these KPIs a central aspect of the release criteria.
- Category
- CyberSecurity & Governance, DevOps, FinTech — Wealth Management, Governance & Advisory, Operational Efficiency, Product Development, Technology Transformation
- Actions
- Release Management, Version Upgrades, Source Control, Build Processes, Software Deliveries, Process Standardization, Software Quality, Ongoing Enhancements, Manual and Automated Testing, Product Documentation
- Focus
- Operational Excellence, Cross-functional Collaboration, Budgetary Constraints, Risk Management, Coding and Delivery Timelines, Compliance, Audits, TDD, KPIs
- Operational Coverage
- R&D, DevOps, Software Development Corporate Technical Programs, QA, Product management, Configuration, CI/CD, Regression testing, Dependency mapping, Database versioning, Monitoring, Security, Dashboard, Skill assessment, Analytics, Agile, Change Management
- Senior Program Direction
- Didier Debbaut
- Industry
- Wealth Management FinTech







