Bradley Jolicoeur

Mt Laurel, NJ | brad@jolicoeurs.net | LinkedIn | bradjolicoeur.com | GitHub

Objective

I am an IT Leader with significant experience and expertise in distributed systems design as well as all aspects of quality software delivery. I am looking for opportunities that will leverage my honed skills as a strategic thinker, mentoring leader and hands-on engineer.

Core Competencies

  • Leadership, Organizational Transformation, Technology Strategy
  • Innovation, Thought Leadership, Product Management
  • Microservices, SOA, Domain-Driven Design, Event-Sourcing
  • Agile and DevOps Practices
  • Theory of Constraints, Kanban, Scrum
  • Wireframes, Narratives, User Stories
  • Conceptual Data Models, Physical Data Models (OLAP & OLTP)
  • REST API, GraphQL, gRPC, SOAP
  • SQL Server, PostgreSQL, Oracle, Marten
  • AWS (ECS, EC2, S3, Aurora, Amazon MQ, CDK, etc.)
  • Azure, Google Cloud Platform (GCP), Cloud Foundry, Docker
  • NServiceBus, Rebus, RabbitMQ, SQS/SNS, Azure Service Bus
  • Bitbucket, GitLab, Azure DevOps, Git, Octopus Deploy
  • C#, .NET 6, ASP.NET, Blazor, Typescript

Recent Certifications

Wharton Executive CTO Program - 2023

Wharton Executive - Product Management and Strategy - 2023

Wharton Executive - Scaling a Business: How to Build a Unicorn - 2022

AWS Certified Cloud Practitioner (CLF) - 2022

Experience

Derivative Path, Inc - Director, Incubation & Transformation

12/2021 - Present

Responsibilities

  • Participate in the organization as a member of the IT Leadership team
  • Chair the SaaS Platform steering committee to identify and prioritize work for the Supporting Services team
  • Manage team of innovators who prototype and create reference solutions to illustrate how to implement new technologies and patterns
  • Facilitate solution and vendor selection process
  • Identify and evaluate new technology that will enable the organization to achieve strategic goals
  • Collaborate with product owners and software engineers to design and document high-level designs for microservices
  • Interact effectively at all levels of the Organization
  • Lead training sessions and create learning paths for new technology and patterns as they are incorporated into platform

Derivative Path, Inc - Software Architect

11/2020 - 12/2021

Responsibilities

  • Analyze existing software to understand how it can be refactored to be maintainable, performant and agile
  • Create prototypes and reference solutions that illustrate how to implement new technologies and patterns
  • Leverage my experience to mentor team members on all aspects of quality software delivery
  • Collaborate with product owners and software engineers to design and document high-level designs for microservices
  • Document architecture decisions with Architectural Decision Records (ADR)
  • Interact effectively at all levels of the Organization
  • Perform code reviews and provide constructive feedback to software engineers on patterns and practices
  • Lead training sessions and create learning paths for new technology and patterns as they are incorporated into platform

Accomplishments

Established the patterns and practices required to start transforming the platform from a monolithic system to a Twelve-Factor cloud native microservices style architecture.

Created and executed on a strategic plan to transform the monolith into microservices over time and worked with teams to make sure they obtained the skills and patterns to be successful.

Afterman Software - Principal Software Architect

3/2020 - 11/2020

Responsibilities

  • Provide guidance and build consensus with architects and development teams on patterns and architectural standards
  • Work alongside development teams writing production code to lead by example or provide productivity increase where needed
  • Write blog articles, present on webinars and at conferences
  • Facilitate workshops with development and architectural teams to identify opportunities to decompose existing architecture into domain oriented architecture
  • Analyze existing software to understand how the code can be refactored to leverage best practices and become maintainable and agile
  • Design prototypes and example projects that illustrate how to implement Domain-Driven Design and Microservice architectures
  • Interact effectively at all levels of the Organization and with customers, as well as effectively communicate relevant IT-related information to superiors and peers in other departments

Accomplishments

Refactored automated end-to-end testing suite to follow the existing bounded contexts. This refactor significantly reduced the amount of development time required to extend or modify tests since tests for each bounded context could be run independently.

Instrumental in creating an interface for a financial institution to process PPP loans with the Small Business Administration during the early months of the COVID-19 pandemic. This interface was completed in a matter of a few weeks with rapidly evolving requirements. The loans processed through this interface are credited with saving close to a million jobs in the US.

Created a proof-of-concept to automatically provision and deploy a full environment to AWS using Octopus Deploy and AWS CDK. This included creating secure network, EC2 instances, Load Balancers and other infrastructure.

Billtrust - Development Manager

9/2019 - 3/2020

Responsibilities

  • Provide architectural guidance for the development of an innovative B2B Payments platform
  • Lead the continuous improvement of people, processes and technology
  • Guide a cross-functional and self organizing team to become harmonious and productive
  • Evoke creative and innovative thinking from team members while helping them to bring their ideas and career plans to fruition
  • Interact effectively at all levels of the Organization and with customers, as well as effectively communicate relevant IT-related information to superiors and peers in other departments
  • Confront issues openly and quickly and tactfully communicates sensitive information, including handling difficult personnel situations directly, using appropriate discretion, HR advice, and respect for the individual
  • Implement and ensure governance and compliance, including network security, as established by Compliance and Security teams

Accomplishments

Worked with self-organizing development team to reduce the communication friction by identifying the root causes of conflict and providing guidance to individuals on how to better communicate through constructive conflict or by seeing the other parties perspective.

Reorganized team to reduce the communication channels required to design, estimate and implement solutions. This organizational change reduced the overall time the team members spent estimating work and increase the time they spent designing and implementing work. As a result, team morale went up and the overall team went from producing a release every two months to every 2 weeks.

Revised the progression of design and planning meetings so that the people planned to complete the work are included in the initial discovery and design meetings. This shift-left approach allowed the team members to understand why features were important, the reasons for the design decisions and reduced overall tension between members of the team. As a result, the team spent significantly less time in estimating ceremonies, produced more accurate estimates and the team started hitting sprint goals on a more consistent basis.

Reduced the time the team spent developing fine grained estimates for future work that may not be implemented by utilizing t-shirt size estimates for feature epics. This allowed the business to make informed decisions about the priority, cost and duration of work while considerably reducing the time the team spent developing and discussing estimates.

Afterman Software - Sr, Software Architect

12/2017 - 9/2019

Responsibilities

  • Provide guidance and build consensus with architects and development teams on patterns and architectural standards
  • Work embedded in development teams writing production code to lead by example or provide productivity increase where needed
  • Facilitate workshops with development and architectural teams to identify opportunities to decompose existing architecture into domain oriented architecture
  • Analyze existing software to understand how the code can be refactored to leverage best practices and become maintainable and agile
  • Design prototypes and example projects that illustrate how to implement Domain-Driven Design and Microservice architectures
  • Interact effectively at all levels of the Organization and with customers, as well as effectively communicate relevant IT-related information to superiors and peers in other departments

Accomplishments

Provided mentoring to development teams to elevate their understanding of how to leverage patterns and techniques to build testable and maintainable code as well as how to refactor legacy code to address technical debt. Concepts typically include understanding how to identify bounded contexts, Inversion of Control to support automated testing, SOLID principles in practice, Vertical Slice Architecture, Command Query Request Segregation (CQRS).

Created and presented a number of Functional Proof-of-Concept projects to help development teams understand how to use specific techniques in the context of a challenge they were attempting to solve. Some of the technologies showcased in the proof-of-concept projects include Pivotal Cloud Foundry, Steeletoe, Spring Cloud Config Server, Mediatr, Microsoft Azure, Azure DevOps, NServiceBus, Docker Containers, and Azure Service Bus.

Provided technical leadership in initiative to initialize a newly organized development team with a cloud based technology stack that was new to the organization. The objective was to build systems that follow the Twelve-Factor App methodology, vertical slice architecture, organized as microservices and implement both REST and message based communication transports. The technology used was Pivotal Cloud Foundry, Azure DevOps, Microsoft Azure, Asp.Net Core, NServiceBus and Mediatr. The team was productive with the new technology stack in 3 sprints and went on to provide guidance to other teams in the organization.

Virtua Health - IS Manager, Application Development

10/2016 - 11/2017

Responsibilities

  • Oversee the Application Development team (analysis, design, development, testing, implementation, operations, and support)
  • Develop production ready software as well as prototyping new patterns for the development team to utilize
  • Anticipate internal clients' needs, identify business solutions and continually seek and capitalize upon opportunities to increase internal client satisfaction and deepen stakeholder relationships
  • Define team objectives and goals, and work directly with team members to successfully deliver solutions timely and on budget
  • Oversee the continuous improvement of people, processes and technology. Evoke creative and innovative thinking from team members while helping them to bring their ideas and career plans to fruition
  • Interact effectively at all levels of the Organization and with customers, as well as effectively communicate relevant IT-related information to superiors and peers in other departments
  • Confront issues openly and quickly and tactfully communicates sensitive information, including handling difficult personnel situations directly, using appropriate discretion, HR advice, and respect for the individual
  • Implement and ensure governance and compliance, including network security, as established by Corporate Compliance/Security

Accomplishments

Established enhanced coding patterns the team uses for developing applications by creating example projects and working alongside the developers on the team. (C#, SQL Server, Entity Framework, Autofac, Automated Unit Tests, CI, DI)

Identified opportunities to automate and implemented DevOps tools to automate the software deployment process. This reduced the amount of time the team spent manually deploying projects and then fixing the defects introduced during deployment. (TFS, Team City, Octopus Deploy)

Reconfigured servers into deployment pipeline that included development, QA and Production environments and included consistent server configuration. Previously there was only a development and production environment and much of the development work was being done directly in the production environment.

Implemented standardized and agile methodology for collecting and documenting business requirements for new web applications. The implemented methodology significantly reduced rework and allowed the team to start delivering completed solutions on promised dates.

Designed Service Oriented Architecture to support Population Health program that interfaces with Epic and lead team to implement (Microservices Architecture, C#, SQL Server)

Automotive Resources International (ARI) - Analyst III / Lead Developer

11/2013 - 10/2016

Responsibilities

  • Design and develop solutions for real-time integration of high volume vehicle telemetry data
  • Optimize enterprise data mart data structure for real-time loading and analytics
  • Manage project team using agile processes
  • Develop standard application implementation patterns
  • Collect and document business requirements

Accomplishments

Lead team to design, implement and deliver a near real-time vehicle telemetry system that reduced processing time from days to 11 seconds. Solution processes 1,200 data points per second and is capable of linear scaling through the use of a distributed Enterprise Service Bus. Managed project plan using Team Foundation Server and Agile (Scrum) methodologies. (NServiceBus, Oracle 11g, C#, Log4Net, Web Services, Octopus Deploy, Team City, Mock, Automapper, Autofac)

Identified scalability issues with procedural batch processes used to load real-time data and identified a solution that will scale to future requirements. Documented and presented findings to IT executive management and completed a proof-of-concept project to validate the proposed solution. (NServiceBus, PowerPoint, UML)

CTN Solutions - Senior Consultant / Software Architect

4/2013 - 11/2013

Responsibilities

  • Manage team of developers on multiple projects
  • Responsible for project budgets and meeting client deadlines
  • Collect and document business requirements for client projects
  • Create wireframes and narratives to present concepts
  • Develop standard application implementation patterns
  • Design and develop web applications for clients

Accomplishments

Evaluated the Software Development Life Cycle (SDLC) practices for a client that was struggling to deliver features timely and lead the team through implementation of Scrum and other agile techniques. The outcomes included better team cohesion, more accurate requirements, increased quality and predictable timelines. (Team Foundation Server)

Collected requirements and designed custom software solutions for clients. Designs were documented using UML, User Stories, Wireframes and Process Flow diagrams and presented to clients for approval. (ASP.NET, C#, SQL Server, MVC, KnockoutJS, SharePoint, Azure)

Managed development team during the implementations of multiple custom web applications for clients based on collected requirements.

ARAMARK - Senior Technical Analyst / Lead Developer

8/2010 - 3/2013

Responsibilities

  • Design and maintain the roadmap for enterprise application architecture
  • Create wireframes and narratives to present concepts
  • Develop standard application implementation patterns
  • Maintain and enhance line of business OLAP & OLTP databases
  • Design and develop line of business web applications
  • Collect and document business requirements
  • Manage application development vendors
  • Mentor team on application development techniques and best practices

Accomplishments

Designed and implemented a web application architecture that has enabled the development staff to deliver application functionality at a faster pace with better quality. (SQL Server, C#, Silverlight, MVC, ASP.NET)

Designed and implemented a standardized user access control system for line of business web applications. The user access control system allows central management of user access and reduced the amount of time to develop new line of business applications. (SQL Server, C#, Silverlight, Web Services, ASP.NET, RIA Data Services)

Designed, documented and developed several LOB web applications that are utilized by 20 to 300 users. Efforts included working with stake holders to establish requirements, reporting on project progress and guiding User Acceptance Testing. (SQL Server, C#, MVC, Silverlight, Web Services, ASP.NET, RIA Data Services, WPF)

Redesigned the existing data mart including simplifying the ETL processes and reorganizing the OLAP tables and Multidimensional cubes to be more efficient. (SQL Server, SSAS, SSIS, C#, Oracle)

Implemented consistent Staging, QA and Production environments for all LOB databases and web applications. Initiative involved consolidating servers and implementing processes and tools to ensure development efforts utilized the environments appropriately. (SQL Server, SSAS, SSIS, C#, ASP.NET)

Evaluated the Software Development Life Cycle (SDLC) practices and lead the development team to design and implement enhanced practices. This initiative included implementing TFS for work item management as well as source control. (Team Foundation Server, SharePoint)

Jolicoeur Consulting, LLC - Owner / Senior Consultant

6/2009 - 8/2010

Bradrick Group, Inc. - Owner / Senior Consultant

10/2006 - 6/2009

Data Automation Systems, Inc. - Owner / Senior Consultant

2/2003 - 10/2006

Sengen - Director, Applications and Systems

12/2001 - 2/2003

Data Automation Systems, Inc. - Owner / Consultant

11/1998 - 12/2001

Education

Salisbury University - Perdue School of Business Bachelor of Science - Business, Management, Marketing

Udi Dahan's Advanced Distributed Systems Design with SOA - 2015

ARAMARK Leadership Development Program - 2011

Acknowledgements

Particular Software Recognized Professional - 2020

Interests

Biking, Kayaking and Photography

References

Available Upon Request