Learn Data Skills
Beta
Stephen Kawaguchi

Stephen Kawaguchi

Senior Software Engineer

Flipp | Toronto, Canada

Technologies

My Portfolio Highlights

My New Project

Exploring NYC Public School Test Result Scores

My New Course

Introduction to Python

Quantitative chef, mixing variables and algorithms to create delectable insights.

My Work

Take a look at my latest work.

course

Data Manipulation with pandas

course

Introduction to Python

course

Intermediate Python

DataCamp Course Completion

Take a look at all the courses I’ve completed on DataCamp.

My Work Experience

Where I've interned and worked during my career.

Flipp | Mar 2024 - Present

Senior Software Engineer (Curation+)

- Co-led the rollout of the Flipp Developer Portal to drive internal adoption of APIs - Wrote guides to establish good practices for protobuf, feature flags, and PR reviews - Top contributor for Curation+ to meet cycle time improvement goals of > 1 deploys per day, and average cycle time of 3 days - Played a key supporting role in the Dynamic Visual Marketing initiative, covering code reviews, maintenance, on-call rotation, and Onboarding Buddy duties on top of development helping us meet an aggressive six-week delivery date for one of the largest grocery retails in the world. - Refactored the Go service template for testability, and added integration tests - Elevated software engineering standards through guides, PR reviews, code complexity improvements, and Architecture Decision Records - Introduced distributed tracing and improved dashboards to reduce incident recovery time from ~3 hours to 30 minutes. - Founded the Software Engineering Book Club to foster discussion and teach software engineering principles and practices - Led the adoption of Ports & Adapters, Trunk-Base Development, and observability enhancements Introduced Game Days to practice outage scenarios - Successfully implemented SLIs, SLOs, error budgets, APMs, distributed tracing, and streamlined incident management process which significantly improved flow
Show More

Flipp | Mar 2023 - Feb 2024

Senior Software Engineer, Platform Domain Acceleration

- Joined a special platform accelerator program to jumpstart Flipp's move to business domains and lay foundational platform infrastructure. - Developed systems across multiple domains, including content search and geospatial, using Go, Rails, OpenSearch, DynamoDB, PostGIS, Kafka, and Kubernetes. - Spearheaded the successful delivery of the first two production integrations, collaborating with consumer teams to ensure the v2 model met their requirements. Optimizing performance to achieve sub-500ms response times, conducting load testing, and implementing observability tooling for enhanced reliability. - Introduced Game Days to practice outage scenarios, reducing incident recovery time from ~3 hours to 30 minutes. - Led research, selection, and MVP implementation of the Tyk API Gateway to support a target of 3,000 RPS and introduce rate limiting and API keys. - Led the development of an image transformation pipeline for real-time image processing, significantly reducing pre-processing and storage costs by caching transformed images in CloudFront. - Participated in the Flipp Mentorship Program with one formal and three informal mentees, sharing expertise and guidance. - Managed the integration of SonarQube into our team's microservices, achieving a quintuple-A rating before transitioning ownership to other teams.

Ada | Nov 2021 - Feb 2023

Principal Engineer, Core Application Platform

- Conducted architecture audits and provided recommendations for improvement as Principal Engineer - Enhanced team performance, stability, and delivery speed by addressing technical debt, and coaching the team on how to avoid adding more tech debt. - Established software engineering principles emphasizing high empathy and shared ownership - Refactored a critical Express.js web server using TDD to develop comprehensive automated unit and integration tests running in under 12 seconds - Created a case study to educate developers on software patterns and principles - Prototyped a microservice chassis in Nx and Nest.js to maintain three agent platform integrations in Express.js microservices (Intercom, Oracle, Kustomer) - Taught team stabilization techniques on an Express.js/DynamoDB microservice handling Slack integrations by applying TDD and refactoring patterns - Led the adoption of SonarCloud and led its rollout to Tier 1 and Tier 2 service repos - Collaborated with the Chatbot UI team to enhance stability, solidify the API, and plan for performance and maintainability improvements - Conducted formal 1:1s with developers at all levels using Radical Candor- style communication - Co-authored guides on various topics, including peer code reviews, automated testing strategy, Lean Management, Agile estimation, bug postmortems, and code quality principles - Contributed to a culture of learning through the Lovelace Learning League and Dev Craft Guild initiatives

IBM | May 2021 - Oct 2021

Software Architect, IBM Dashboards

- Moved over to a new SaaS offering to fix the development and release workflows of five feature teams using Lean/Agile/DevOps practices. - Led a working group to redefine automated testing practices. Our focus was improving code modularity and increasing automation over manual testing. - Teach software engineering fundamentals through internal talks, PR reviews, and coaching sessions. - Part of a large, cross-functional research team for the IBM-wide Inner Source pitch to the CEO and SVPs as part of the Developer Experience chapter. The result was a successful pitch and establishment of the Office of Inner Source at IBM. - Consulted on an IBM-wide initiative to leverage Tekton/JenkinsX to enhance our DevOps practice across tens of thousands of developers. My focus was to help figure out how the tooling could integrate DevOps practices and make the greatest impact on team velocity, quality, and stability.

IBM | Mar 2019 - May 2021

Front-end Architect, Cognos Analytics for Mobile

- Led the transformation of the Cognos Analytics (CA) Mobile team into a DevOps-capable team by adopting Agile practices, a continuous delivery workflow, and a “You build it, you run it” mentality. By introducing Kubernetes and Node.js microservices, we achieved the fastest deployment speeds in the business unit (7 - 10 day cycle vs. 60 days) and the highest SonarQube quality and security levels (Quintuple-A, 98.7% code coverage across ~30k lines of code). - Create an onboarding process that enabled the CA Mobile team to enable contributions within 1 day for developers from intern levels of experience and up. - Led CA Mobile product delivery through dependencies on 20+ teams and the gauntlet of audits and reviews needed to release a new product at IBM. This included security, supportability, cloud-native readiness, Design/UX, two customer beta programs, architectural reviews, and several internal reviews from executives, global sellers, and peer groups. - Mentor developers of all levels via pair programming sessions, PR reviews, and individual coaching. - Co-founded a Software Engineering Learning Club and Business Analytics Agile Guild. I gave talks on Agile Estimation, Always Shippable Development, and other topics. - Contribute to the IBM SRE Certification curriculum as a subject-matter expert on the modules for architectural reliability patterns and Test-Driven Development (TDD) - Contribute to the IBM Agile Academy with write-ups outlining Agile practices such as Agile Estimation and Blameless Post-Mortems. - Invited to present on the Mobile Team’s success with Agile Estimation and Planning at the 2019 Business Analytics Leadership Summit.

Aquent IT Solutions | Oct 2017 - Feb 2019

Senior Front-end Architect (Consulting for John Deere)

- Improved code quality across a team of 20 - 30 front-end developers using Github PR reviews; streamlined PR review process by leveraging Danger.js to reduce large PRs by 75%. - Optimized time for writing acceptance and smoke tests by over 70% (from 3 days to 5 hours) by implementing Cypress.io into the front-end workflow. - Simplified PR merging process for developers by streamlining quality metrics and implementing a trust-based development model, improving the productivity of front-end teams by 20 - 40%. - Improved the ramp-up time to meaningful contributions for new hires and transfers by more than 4x by developing a strong mentoring process and optimizing the onboarding process.

Aquent IT Solutions | Jul 2014 - Sep 2017

Front-end Architect (Consulting for John Deere)

- Identify, propose, and work on research projects to improve overall product maintainability, reuse of code, and workflow. Examples include reusable components in React, the Spirit of Agile, historical analysis of Agile versus Scientific Management, the effectiveness of Test-Driven Development, etc. - Establish development best practices and standards. - Mentor developers from all experience levels. This includes soft skills as well as technical and architectural skills. - Work with leadership groups from Aquent and John Deere to develop strategies around resourcing, training (e.g. JavaScript, React / Redux, software engineering, and TDD), development workflow, technology stack, and Agile practices. - Coached multiple front-end teams to improve code quality and reduce bug injection rate from ~15 per team per sprint to < 1 using software engineering principles, React.js, better static code analysis and CI tooling, and BDD. - Managed tech debt in 100+ front-end repos across 10 teams and got them to the point of quintuple-A SonarQube rating with 100% code coverage in 90% of those repos. - Recovered project timeline and restored client confidence by delivering React.js view using TDD, resulting in a 90% reduction in bug density. - Co-authored the conversion of a complex Build and Price app to React.js from Angular.js to address major performance and maintianability problems. This involved the application of DDD to fix the underlying data model. - Improved the performance of an AngularJS spreadsheet application by 93%.

Fifth Light Technology | Sep 2011 - Jul 2014

JavaScript Engineer

- Fifth Light Technology was acquired by Cooper Industries in Feb 2012. Cooper was acquired by Eaton Power in May 2012. - Worked on an IoT AngularJS application for a touchscreen device to control Building Automation Systems (lighting, HVAC, security). It ran at 30fps on a resource-constrained ARM board. - Developed an interactive kiosk and television dashboard to showcase live Building Automation Systems data collected from live systems within facilities to highlight the real-world impact of energy, water, and other conservation technologies. Deployed at the Evergreen Brickworks.

ecentricarts inc. | Jan 2013 - Nov 2013

Front-end Engineering Consultant

support in various capacities, mostly as a front-end architect or developer. - Contributed to the front-end development best practices working group.

TPM Communications | Jan 2009 - Aug 2011

Technical Director

TPM was acquired by Saatchi & Saatchi after I left. - I had a broad set of responsibilities at TPM, including technical leadership (e.g. the assessment of new technologies, leading internal innovations, proposal of technical client projects, etc.), participation in senior management strategy meetings, business process improvement, building and managing the development team, user experience design, and hands-on development as needed. - Our primary client was Toyota Canada and Scion Canada, although we worked with D+H (Davis and Henderson) and other smaller clients. - Designed wireframes to collect rapid feedback from Scion stakeholders to begin development in 40% of the usual time. - Successfully led an Agile adoption by researching adoption techniques, bringing in an Agile coach, and collaborating on a tailored adoption crash course and a rollout for new software (Scrum) and regular maintenance (Kanban). - Worked with early Toyota Canada REST services as part of toyota.ca and scion.ca development. - Led a rapid scale up of the development team from 3 developers to 9 in 5 weeks while planning and building the scion.ca website, including complex Build and Price and social media features. - Wrote the Unity 3D prototype that was instrumental in winning the Scion.ca bid.

Kolony Media | Jun 2000 - Jun 2010

Flash/Front-end Developer

- Kolony was a side-business I started with a couple of partners in 2000 to create opportunities to keep my technical skills up to date as I began to work with more specific brands and technologies. It became a ten-year journey that gave me invaluable experience in how to run a company like project management, logistics, coordination, and client management. While I was working on larger projects on various teams during the day, at night I was helping to run a thriving design business. - I've since moved on as I feel that I need to focus to continue my growth, but Kolony was a critical part of making me who I am as a professional, and I am grateful for the experience and look back on it fondly.

ExtendMedia | Aug 2008 - Jan 2009

Sales Support Engineer

Extend has since been acquired by Cisco Systems. - Worked as a Sales-Support Engineer for a proprietary Adobe Flex interface for a video provisioning system. This primarily customer-facing role included working with Disney and NHK (Japan). - Supervise an off-shore Ukranian development team for UI customization work. - Responsible for UI design, prototyping, and customization of the Flex app. - Worked with the core product team to improve the design and documentation of the Flex application.

Radiant Core | Oct 2007 - Aug 2008

User Experience Designer & Integration Developer

- Worked as an Integration Developer for RadiantCore’s JSP-based CMS platform to customize web apps for various clients. - Worked as an Integration Developer for Zerofootprint’s Ruby on Rails application that created a carbon credit marketplace for companies to help drive positive environmental change programs. - - Worked closely with environmental scientists to understand climate science and facilitate their calculation processes. - Worked as a UX Design Consultant to create wireframes that supported business needs for clients like John Hancock and several smaller clients. - Worked on various projects as the studio Flash development expert. - Project Lead and co-author for a Flex application for Kool-aid, an interactive children’s game world, which included custom avatars in an animated world full of games and other activities.

Bank of Montreal | Feb 2002 - Oct 2007

Technical Program Manager (Several Roles)

- I started out here as my first full-time job out of school. I was a Flash developer, and then followed the management track as Team Lead, Project Manager, and then Program Manager. - Work in a heavily compliant environment while achieving a high delivery velocity with high stability by applying Lean management and Continuous Delivery (before the term was coined). - Started as a Flash Developer and became a Tech Team Lead and Project Manager. - Most of my tenure was as a Technical Program Manager responsible for building and running the systems of 13 learning programs (5 “inactive”) with a team of 10 developers and 2 UX designers. - Received four years of in-class and on-the-job leadership and management training working directly for the leadership curriculum owner at the BMO corporate university (BMO Institute for Learning). - Worked closely with Instructional Designers on e-learning solutions for various banking policies, internal development training programs, and audit and regulatory programs. - Part of an LMS tool assessment group based on SCORM and AICC and adoption. - Developed a Flash simulation tool to train front-line staff on BMO’s main credit risk decisioning mainframe system. - Work in a strict bi-lingual environment (French, English).

Overdrive (Design Limited) | Jun 2000 - Jan 2001

Flash / Front-end Developer

- Developed a Flash website for photographer Rob Allen which was published in a book. - Developed Flash websites under the direction of several art directors and provided technical recommendations for approaches to website production. - Involved in all aspects of production including image production, content proofing, layout, coding, and testing. - Worked on www.roballen.ca, the Research Casting corporate site (replaced in 2002), and a Flash user interface prototype for ATI. - Developed an HTML IPO site for ElectroFuel (now Electrovaya) with a one week timeline. - Developed a Flash prototype for the ATI All-In-Wonder video card interface.

My Education

Take a look at my formal education

Project Management Curriculum, Project ManagementBMO Financial Group Institute for Learning | 2007
Bachelor of Design, Graphic DesignYork University | 2001

Powered by

  • Work
  • Courses
  • Experience
  • Education
  • Create Your Data Portfolio for Free