Steve Browning
Senior Software Engineering Manager at ACTO- Claim this Profile
Click to upgrade to our gold package
for the full feature experience.
Topline Score
Bio
Credentials
-
Faster Websites with Nginx
SitePointAug, 2015- Nov, 2024 -
Understanding the CSS Cascade
SitePointAug, 2015- Nov, 2024 -
Vector Graphics From Scratch
SitePointAug, 2015- Nov, 2024 -
Build a Custom WordPress Theme
SitePoint
Experience
-
ACTO
-
Canada
-
Software Development
-
1 - 100 Employee
-
Senior Software Engineering Manager
-
Dec 2021 - Present
I remotely manage 5 agile Software Engineering teams; Data Science, iOS, Android and Integration & Innovation. Have SRUM running well on all my teams and have trained SRUM masters for each. I am helping the “Health Innovation Team” with refining proposals and ensuring technical accuracy. I have also put forth two new innovation ideas and one disruptive technology innovation proposal. My teams have reduced escaped bugs from 200 to 5 per month and soon they will be eliminated. I continue to expand best practices and provide challenging and fun projects that fuel Software Engineering growth. In my one and ones I continue to strengthen software engineering best practices like Test Driven Development (TDD), Refactoring, SOLID and architectural pattern / design. I am also working to find and grow each career paths; luckily ACTO supports this. I am on the community of agilists group and helping to bring a variety of agile practices to ACTO. I have created and am managing a new DB-Guild that is defining database standards and consulting with ACTO teams to help train them on better database design and SQL queries. I am assisting the new product managers on my team to integrate and excel with our teams. I provide technical guidance for less technical roles like product management. Show less
-
-
-
Wise Publishing, Inc.
-
Canada
-
Technology, Information and Internet
-
1 - 100 Employee
-
Senior Full Stack Developer
-
Feb 2021 - Oct 2021
• I designed and created a new Laravel Thimble api back-end system that manages MSSQL product data. ◦ Results: Thimble now services millions of views per day with the mortgage rates table and the mortgage calculator. • I migrated and imported Wise’s event data storage from Elaticsearch to Google Big Query. I built a Node.js Cloudflare worker to parse the incoming events, format into realtime stream data and posted to Big Query tables. I partitioned the tables in a way to minimize cost for queries against the servers. ◦ Results: The events stream without loosing data. Wise can now use business intelligence software to more effectively dive into the data. • I proposed, designed and developed an experiments engine in ES6/7. Showed front-end developers how to unit test their JS code. ◦ Results: front-end ad and page view tests to be written easily, quickly as there is a predefined interface which allow many experiments to be spun up/down and run concurrently. • I envisioned and created a ElastichSearch batch deploment system in Node.JS utilizing ElasticBeanstalk. ◦ Results: Wise can now sed ad and user tracking events in batches of 1000. Node.js handles queuing and rate limiting for this bulk data to deploying events to ElasticSearch. The Node.js app manages memory carefully so it can reload repeatedly without memory leaks. This allows Wise to scale data sent to ElasticSearch by many fold without clipping performance or over paying for excessive auto-scaling. • I taught Junior developers best practices. ◦ Results: The junior devs learned test driven development (TDD), increased standards by implementing code-reviews, properly documented code, and ensured that naming and code conventions (PS12) were adhered to and wrapped into their code editors to make this process seamless. Show less
-
-
-
-
Full Stack Engineer Contractor
-
Nov 2020 - Feb 2021
Core Concepts: Full Stack, DevOps, Project Management • I was asked to build a brand, site and social media channels for oversimplification by a long-term client Kate Johnston Consulting. • I worked with a graphic designers colour, font and design styles and used CSS3, HTM5, JavaScript and PHP to create a corporate site. Did 4 rounds of iteration as Kate wanted refinement in the design and layout. • I setup an openvpn connection to our host and setup NGINX as our web server. I version and manage changes to the site using GitHub and maintain development, master and release branches. • I was asked to format the Facebook template and worked out a schedule of type and times of Facebook posts. Results: The site is live, the Facebook and all of the branding are working very successfully. Kate's bookings have led to her expanding the company and getting help to perform the organizing and simplifying people's living situations! Show less
-
-
-
Mark Meldrum.com
-
St. Catherines ontario
-
Senior Developer
-
Dec 2019 - Nov 2020
Built two iOS apps – one for iPhone 4 and below using UIKit and one for iPhone 5 and above using SwiftUI. These apps support downloading video to CoreData. CRUD operations for the video. Customized player, JWT and WordPress authentication and fore / background downloads. I proposed a Video On Demand system to lower streaming charges. I showed a model of how we could lower streaming costs from 45k to 5k U.S.. The company liked the proposal so I was asked to build it. I used a AWS VOD Solution and then modified the Node.JS lambdas, dynamo ( added fields ), Signed Cookies, CORS for assets streamed from our S3 destination bucket. The VOD system now serves 100% of markmedrum.com’s videos and costs $400 per month. Create custom controls and player options that supported Brightcove and Vimeo video players. Did DevOps work and created unique developer server instances on Amazon use SED to parse the production DB and transform all urs to match the given dev servers URL. We now have many concurrent dev instances so code errors no longer stop other developers from working. I mentored junior developers. I taught them in refactoring techniques, test driven development in PHP Unit and JEST for JavaScript. I taught them the importance of using small focused functions that only do one thing and got them out of writing GOD classes. When I started Markmeldrum’s video code took over 1000 lines written as a GOD functions. I transformed the code to be modular tested code. Over the course of time I switched this code to support Brightcove, Vimeo and YouTube and finally set the JWPlayer as the only player and factored out all the other code. Show less
-
-
-
Reshift Media Inc.
-
Canada
-
Advertising Services
-
1 - 100 Employee
-
Software Development
-
Aug 2019 - Dec 2019
Resigned a Dogtopia warehouse app to use Google tasks, SQL, and App Engine. This was a node app that agregates data for reporting purposes, registers and stores location data, manage pet daycare and spa treatments and booking plus a number of other company related services. The original app was timing out due to too many loops within loops. This was redesigned to offload the loops into tasks based on a dispatcher and task model. There was a fairly high volume of code that needed to be refactored to fit. The project was being launched into Dogtopia after successful beta testing. I was asked to create a new custom cart for ALA. It was based on custom carts previously developed by Reshift. The project was challenging as communication with the customer proved to exceed the quoted project scope; the net result was more needed to be coded in this WordPress based cart with little adjustment in the deadline as this was needed for pre-scheduled conference. It was finished on time and met the customer's expectations. Show less
-
-
-
Postmedia Network Inc.
-
Canada
-
Book and Periodical Publishing
-
700 & Above Employee
-
Architect & Backend Team Lead ~ Monetization and Site Speed
-
Jun 2018 - Jun 2019
This role involves design and architecture for Ads as well as a number of site speed initiatives.Recent Activity• Specing out Prebid.js and developing a custom header bidding server we and other 3rd party clients can use.• Learning TypeScript and JEST.• Working day to day with native modules• Built a WordPress plugin that exposes our DFP site configs to front-end modules.• Architected and have built the JavaScript Plugin Framework. This framework allows complete asynchronous loading of Javascript and CSS driven by api configurations. It registers scripts or css in a mediator so plugins can be added or removed very simply.• I have been asked to assist in architecting a new SRA Google Ad environment that will service third parties and our different technology stacks. Day to Day responsibilities:• Update and meet with other Team Leaders• Handle day to day team hr needs ie. plan vacations, ensure safety training is done, reminders of actions that are need by team members to outside our pod or 3rd parties, coordinate pull request, give support to our developers and ensure they are happy and productive.• Build confluence documentation and code architectural plans and proposals• Work with Product managers to understand and provide solutions to their needs.• Mentor developers that are new to our coding languages as well as best practises• Code Review• Code Pairing• Coding in PHP, Frontend JS ( native ECMAScript 8 - 2018 ), React, Node.js and HAPI. Work the GPT tags and many apis - mostly JavaScript JSON responses; some xml and feeds as well.• Automatic pipeline code deployment - understand and communicate the needs and ways of this new workflow• Involved in team and hiring planning and execution• Interface with DevOps to ensure that our teams coding fits within the infrastructure; like logs, stack technologies and memory management and graphing Show less
-
-
Senior Web Developer
-
May 2013 - Jun 2019
- Worked on the Core Platforms team which manages all horizontal services / technical products. Primarily coded in PHP and JavaScript.- Coordinated a 4 person team to build an Editorial Dashboard WordPress Plugin. It has an interface that is 100% ajax driven / Javascript and allows Editors to View, Edit, Copy Posts or to Create Pointers. It makes calls to our API and queries refined searches using Elasticsearch.- Helping refine MongoDB and Elasticsearch schecma for the Node.JS Search, Clients, Licenses and List APIs- Mapped Elasticsearch index and created a search api using Hapi, Elasticsearch, Node.JS, Mocha, Chai, Proxquire and several other well vetted NPM modules. Currently the Search API serves millions of requests per day.- Designed and lead TDD ( Test Driven Development ) training. Gave 4 conference session where live TDD plus analysis of existing code was provided to remote and local programmers. Mentor developers to help with Continuous Integration configuration and their 'real world' code testing issues. - Introduce refactoring techniques and design patterns to help help our developer's refactoring efforts.- Working on revenue generating ideas for the business group.- Handled all Google DFP ads for our WordPress sites and managed + added new features such as lazy-loaded ads and regeneration of the same ad sizes for a give HTML code structure to not break page layout. Show less
-
-
Team Lead
-
Jun 2017 - Jun 2018
- Took over a team that had been working in silos, lots of technical people but little team dynamics and poor organization and communication- Learned the API code bases and documented technical debt- started to do team building like, paired programming, code reviews for all code, debugging as a team, allowing team members to suggest positive process / tool / communication changes and adopted them.- built a strong relationship with the Digital Director and the Product owner.- Had the team ( including myself ) to refactor all apis, first putting wide-scoping unit test coverage ( over 200 unit tests with full mocking ), in most cases 100% coverage, and refactor blatant overly-complex, redundant, unused and misplaced code.- Upgrade the coding standards so we use all the same Javascript formatting / linting and encourage team devs to spend 20% of their monthly time to learn and share the learning with the team.- raised the efficiency of the code releases from 1 or 2 bug fixes / feature changes to 12 or so over a 2 week sprint period. - devs now reach out on their own to each other and work through issues together. The solicit architecture advise and are willing to hear constructive criticism.- Worked hard to build a strong relationship with Dev/Ops - it was strained under old management - and worked to get a Dev/Ops as well as a QA people dedicated to our team.- Built a semantic versioning survey and had all the DevOps and developers across the entire company to vote on a single versioning Git tag and release standard. Now teams across are company are unified on this approach.- Led a whole Video transition from Brightcove / Kaltura to Youtube. Consulted on the requirements and risks. Managed the development of importing video scripts from Amazon S3 to parse schema and build mapping video objects stored in a mongo collection. This allows our sites to call the old videos and serve Youtube videos that we imported. Show less
-
-
Senior Web Developer
-
May 2013 - Jun 2017
-
-
-
IT Mosaic
-
Burlington, Ontario
-
Director of Development/Technology
-
Jul 2005 - Oct 2012
• added new technology and reconfigured existing systems. Result: reduced operating costs, improved speed, security and efficiency, increased profit, and a 40% reduction in corporate licenses. • led large-scale web projects Result: managed life-cycles, improved content, infused responsive designs and application standards • defined agile programming practices Result: Slashed programming time by 47%, squashed bugs, reduced defects from 40% to 9%, and increased profits by 43% • designed a strengthened security system including firewall, reconfigured sub-networks, and permission structures. Result: better security and greater speed • slashed time wasted on SPAM, viruses, and hacks from 60% to 4%. Result: vastly increased user satisfaction with daily tasks and focused I.T. on productive tasks. • designed and led installation of a robust virtual private network (VPN), allowing connection to the internal networks using home computers, tablet, and mobile phones. Result: allowed connectivity during extenuating circumstances (commuter chaos, weather delays) • started a Cloud -- the web and database cluster could operate during server failure. Result: Boosted web performance and information delivery • promoted teamwork, relationship-building, and designs that support sales and business activity. Result: reinforced business’s vision and objectives, relationships between owners and stakeholders. • designed a business continuity plan and drafted software ownership contracts. Result: protected company and intellectual property from disputes over deliverables, schedules, and costs. • ramped up fail-over processes via methods as simple as a back-up diesel generator for power outages to more complex ‘round robin’ public servers and clustering for internal email. Result: significantly decreased downtime Show less
-
-
-
Isis Digital Media Inc.
-
Burlington, Ontario, Canada
-
Vice President
-
1999 - 2005
• built company from ‘rough start’ through hiring, innovation in network infrastructure, scheduling and risk management Result: a thriving, efficient company that experienced remarkable growth • innovated: fused technologies, developed software techniques, distributed methods of content delivery, created unique programs and techniques Result: Burlington Chamber of Commerce awarded Isis as the most innovative company of 2004 • oversaw all projects, refined process and rapidly increased production to vastly increase company profit Result: Company delivered consistent quality on time and on budget • established communication expectations in-house and for customers by teaching effective team skills, accurate quoting methods, setting customer expectations, and schedule oriented risk management Result: Improved morale, effective customer service and better control of project life-cycles • worked with departmental managers to plan annual department budgets Result: Flourished without inflating budgetary needs or excessive spending • built effective relationships with vendors Result: more knowledgeable service and the creation of industry-leading hardware/software discounts as vendors leveraged their best advice and pricing Show less
-
-
-
McGill Digital - Wireless Ronin Technologies Inc.
-
Toronto, Windsor, London England
-
Director of Technology
-
1996 - 1999
• showed promise at managing people and leadership in design Result: Elevated from UX designer to Director of Technology • introduced efficient work procedures in each department Result: vastly improved employee morale • innovated remote management software for client that managed and secured product and eliminated in-store product theft Result: when client was sold to Circuit City, remote tool increased sales by $7 million • linked business networks via secure VPN at a time when VPNs were largely unknown Result: secure communication of innovative code and proprietary documentation and private communication. • created custom music and vocal recording for TV advertising and multimedia applications Result: value added content for clients • Led team in design of multimedia software for major clients, Chrysler and Sears Result: successes here led to my promotion Show less
-
-
Education
-
Queens University
B. MUS, Theory & Composition, Minor in Film Scoring -
Kingston College - Kingston Ontario
Diploma, Advanced C Programming -
King Edward College Vancover
College Diploma, Jazz and Commercial Composition