Back to site.

Career Profile

Enterprise Cloud Architect specializing in Drupal, Aegir, SaaS, PaaS, and IaaS. I do technical planning and implementation to ensure sound and sustainable solutions. I’ve worked with Drupal for over 12 years, and maintain over 40 contributed modules. I’m also a core maintainer of the Aegir Hosting System. Additionally, I’m a certified software engineer who’s been security cleared by the Canadian government. I volunteer my time to mentor students for Google Summer of Code (GSOC).

Skills & Proficiency

Back-End Development

Technical Architecture

Web Services

Documentation

Experience

Founding Partner

2018 - present
Consensus Enterprises

Software and systems engineering, Web services, SaaS, Infrastructure and DevOps consulting.

Core Maintainer

2016 - present
Aegir Hosting System

Development and maintenance of the open-source project for hosting Drupal and other types of sites.

Maintainer of Contributed Projects

2006 - present
Drupal

I’ve built and/or maintain over 40 Drupal modules.

Director Of Engineering

2016 - 2018
The Authenticity Institute

Digital identity & cryptography.

Founder & Principal Consultant

2013 - 2018
Colan Schwartz Consulting Services

Independent contracting for various organizations in the public and private sectors.

Projects

I’ve worked on many projects throughout my career.

The Authenticity Institute - Digital identity
  • Created information architectures that integrated with authenticity/identity components.
  • Used cryptography and the Authenticity Infrastructure in the initial design of software systems to prevent security from being an afterthought.
  • Worked towards implementing continuous integration and delivery (CI/CD) of software.
  • Architected the cloud-computing infrastructure necessary for hosting cloud-based applications.
  • Provided expertise in the enterprise technical architecture area.
  • Produced S aaS and PaaS solutions.
  • Implemented and documented DevOps processes.
  • Took a best-practice approach to back-end software development.
  • Supported Drupal sites via the Aegir Hosting System.
Health Canada - Proprietary and Scientific Information Assessment Info Mgmt
  • Provided advice on Web technologies and the resource roles necessary for various Web projects.
  • Planned the infrastructure for hosting Drupal sites.
  • Produced estimates for the new business requirements and upgrading the existing site to Drupal 8.
  • Added support for user groups, and being able to notify all members.
  • Set up new Drupal 8 site, configured it and added functionality from Drupal 7.
  • Wrote a custom notification system for updates to access-to-information requests.
  • Created a scheduling subsystem for automatic e-mail reminders that get sent when tasks are due.
  • Added tests for Drupal core development.
  • Set up an Aegir Hosting System instance on a new VM for a new Development environment.
  • Updated the standard Drupal 8 update process to include instructions for patch management.
  • Documented installation and operations required for running Health Canada Aegir instances.
  • Configured Aegir to run behind a reverse proxy to add HTTPS support.
  • Developed migration plan, configuration and documentation for migrating the data to Drupal 8.
  • Helped with supporting data migrations from Drupal 7's Field Collection to Drupal 8's Paragraphs.
  • Migrated users, groups, records, references and comments from Drupal 7 to 8 with a new module.
  • Worked with others to scale the Aegir implementation.
Holland America Line - Booking Data Flow
  • Researched various configuration deployment approaches across development environments.
  • Developed workable solution for packaging bundles of configuration as features.
  • Modified the configuration merge workflow as necessary to match requirements.
  • Finalized process for merging Web UI configuration with developers’ configuration in code.
  • Determined the best cryptographic cipher suite to use for supporting common browsers.
  • Proposed and oversaw plans for improving caching, load balancing, and adding a logging server.
  • Instituted policy of tracking all application configuration in the code repository under version control.
  • Rejigged file permissions and ownership for securing Staging and Production systems.
  • Added a feature to simplify the Drush command handling merging.
  • Devised process for connecting to the corporate VPN though Linux.
  • Refined developer documentation for setting up and maintaining local sandbox sites.
  • Reviewed existing configuration management processes and the Nginx Web server configuration.
  • Standardized application configuration across all environments.
  • Developed deployment processes and supervised code deployments.
  • Managed continuous integration with Jenkins via development build scripts.
  • Enhanced the release tagging strategy and process for emergency code fixes.
  • Performed developer code reviews.
  • Tuned applications for performance.
YMCA San Francisco - Remote Data Management
  • Drafted options for importing remote data.
  • Mapped remote data types to corresponding records defined in local data model.
  • Determined optimal use of APIs providing access to current data stores.
  • Set up several feed importers for ingesting content.
  • Reviewed and stabilized the data model.
  • Developed several routines to convert data for local stores as necessary.
  • Added spam prevention to various public-facing forms.
  • Devised plan for adding time-of-day filters to data views.
  • Solved various timezone issues.
City of San Francisco - Sites Migration
  • Assessed possible site and code repository architectures, and dealing with related issues.
  • Solved various issues with migrating and importing sites into the new environments.
  • Discussed possible single sign-on (SSO) strategies.
  • Coordinated with new hosting provider.
  • Set up access to virtual machines (VMs) for developers & other maintainers.
  • Created master Drush configuration for all sites.
  • Prepared to launch sites into production.
  • Investigated various caching issues with Redis, etc.
  • Reconfigured the Solr search engine.
Nestlé - Canadian Products
  • Assessed existing information architecture (IA) / data model.
  • Produced plans to improve the IA and development processes (DevOps).
  • Planned development activities for several technical resources.
  • Managed, organized, prioritized and estimated issues in the tracking system.
  • Guided developers to help them accomplish their tasks.
  • Provided feedback (as per best practices) on client assumptions for building Drupal sites.
  • Established parameters for a successful content editor workflow and implemented a solution.
  • Built the authoritative code repository, database and supporting applications (e.g. mail, Drush).
  • Developed the site's functional specifications.
  • Instantiated deployment scripts for moving code, databases and files between environments.
  • Set up the Development, Staging and Production environments with a full application stack.
  • Ensured that the HTTPS certificate was correctly integrated.
  • Configured the Web server configuration Nginx + PHP's FastCGI Process Manager (FPM).
  • Documented the virtual machines' set-up and all development & operational processes.
  • Implemented multiple automated backup strategies for all assets.
  • Added a multilingual / translation subsystem to support both English and French content.
  • Upgraded Drupal core and contributed modules to protect against security vulnerabilities.
  • Audited all modules (plug-ins) chosen by the developers.
  • Researched various content delivery networks (CDNs) to determine applicability.
  • Built a Java stack for the Apache Solr service via the GlassFish application server.
  • Coordinated the implementation of a single-sign on (SSO) solution with another vendor.
  • Debugged issues related to the corporate firewall.
  • Tweaked system configurations to meet security standards.
  • Modifying data-import processes to match business requirements.
  • Worked with client to resolve domain name service (DNS) routing issues.
  • Architected a social sharing solution to post site content to various Web sites.
  • Delivered a system to tag and display list of content based on various filters.
  • Performed code reviews.
Canadian Football League - Corporate and team sites
  • Developed system architecture and technical requirements documentation.
  • Proposed various technical solutions to business requirements.
  • Worked with the project manager to provide cost estimates.
  • Researched third-party services necessary for the sites.
  • Communicated with various service providers to host the site's multimedia assets.
  • Investigated Drupal platform-as-a-service (PAAS) hosting companies.
  • Discussed options for managing the sport's statistics.
  • Wrote a business case for Drupal-platform hosting as opposed to generic hosting.
  • Provided technical guidance to the development subcontractors.
Canadian Blood Services - The new Blood.ca / Donor Web Portal
  • Architected the roll-out of Drupal (the WxT distribution) as the new enterprise Web platform.
  • Developed the new Donor Web Portal for booking blood-donation appointments.
  • Extended Drupal as an interface to load & save remote data through a REST API.
  • Researched options for SSL/ TLS terminators, reverse-proxy caches, load balancers & Web servers.
  • Ensured the QA & Production environments were available via HTTPS, with proper certificates.
  • Wrote a business case for switching to Git version control, and set up an appropriate architecture.
  • Instituted DevOps processes for coordination, deployment & upgrades with Git and GitLab.
  • Created (auto-)deployment scripts for moving code, configuration & data between environments.
  • Set up automatic Drupal user account creation on logins based upon the back-end CRM.
  • Provided users the ability to securely register, manage their appointments & view history.
  • Designed and implemented a Drupal module for OAuth2 user authentication & authorization.
  • Integrating outsourced theming and other front-end work into the new framework.
  • Performed code reviews and wrote an article how this is best done within Drupal projects.
  • Produced a method for displaying remote data (not local to Drupal) using Views.
  • Implemented a content editor workflow for authoring, approving and publishing content.
  • Provided options for performance optimization and security-related issues.
  • Allowed content editors to upload files to arbitrary locations within the Drupal file system.
  • Reduced deadlocks with the MySQL database implementation through new configuration.
Reputation.com - US-UK Web Site Merge
  • Re-architected the US site to serve the UK site as well, with different subdomains.
  • Allowed for seamless switching between country contexts.
  • Set up editors with field-based content localization for both the US and the UK.
  • Worked with third-party APIs (e.g. LiveChat, Mongoose Metrics) to enable multi-country support.
  • Provided different landing page tempates depending on the locale.
  • Swapped in country-specific menus & other compoents based on the active country.
  • Wrote DevOps process documentation to deploy code & configuration.
Harvard University - Acquired Data Accountability and Management System (ADAMS)
  • Upgraded the site from Drupal 6 to 7.
  • Instituted group-based access control for different organizations within the university.
  • Developed a process to create new organizational data use agreements (DUAs) from templates.
  • Created a framework allowing for different document workflows within each organization.
  • Set up modern revision control with a development workflow and a new hosting provider.
Hunter Boots - Hunter Boots Canada
  • Added Canadian currency (CAD) support to the e-commerce application.
  • Rewrote e-commerce code make it work for multiple countries.
  • Performed research on adding an automated Google Shopping feed.
  • Added support for Canadian shipping addresses.
  • Tested shopping-cart checkouts for Canadian customers.
  • Constructed a system to provide country-specfic features (e.g. menus) per country site.
Back to site.