About Me

Header Photo Credit: Tookapic (Creative Commons Zero License)

My name is John M. Wright and I'm a professional software developer living and working in the greater Chicago area. As 17-year veteran of the software industry, I've gained development experience ranging from “shrink-wrapped” software to large, distributed networks using multiple platforms and technologies. My experience spans the entire software lifecycle: customer-facing requirements gathering, analysis, design, development, testing, release, and maintenance. I have successfully led teams to deliver software using pragmatic methods and continuous improvement of process, people, and product. Though I have experience in a manager role, I prefer to provide leadership through technical direction and mentorship.

These days I focus mostly on the Microsoft stack (C#, SqlServer, Windows, etc), but my first programming job was in C, TCL and Perl on the Linux platform. I made the shift to .NET around 2005 and have been here ever since.

I have a passion for high-quality, clean code. Whether through sharing my experiences with TDD approaches, mocking frameworks, and static analysis tools, or guiding less experienced developers through design patterns, SOLID principles, and the darker crevices of the .NET framework, I enjoy sharing my approaches with my peers and learning from their experiences -- helping everyone "level up" as a team.

I currently live in the western suburbs of Chicago with my wife and son; however, I grew up in Castroville, Texas, a small town in the middle of corn fields and cattle ranches to the west of San Antonio, Texas. I spent my college years at Southwest Texas State University (now Texas State University) in San Marcos, Texas, where I earned my Bachelor of Science in Computer Science degree and flirted with a Psychology dual-major before realizing I didn't want to pay for that extra time in school. I moved to Austin with my wife in 2001, and that's where my son was born a few years later. In 2006, we all moved up to the Chicago area and haven't quite been chased off by the crazy winters just yet.

Read on below for an overview of my work history.


Work Experience

Chicago, Illinois

kCura is the developer of the Relativity e-discovery legal software, used by organizations including the US Dept of Justice and more than 195 of the Am Law 200 (top US law firms).

Lead Software Engineer

June 2016–Present

  • Performed technical analysis for potential projects in department backlog, working with product owners to define requirements and give high level designs and estimates for the Relativity Processing/Invariant product.
  • Performed code reviews and technical guidance to junior developers and SETs.
  • Led peer-selected workgroup focusing on improving product quality, development practices, and addressing key issues with automated tests for product line.

Chicago, Illinois

InRule Technology is a software company offering Business Rules Management System (BRMS) enterprise software products designed to author, manage and leverage business rules and complex decision logic.

Lead Product Engineer

Mar 2012–June 2016

Director of Development

Mar 2014–Feb 2016

  • Senior developer, working on wide assortment of .NET-based product components utilizing C#, WPF, and ASP.NET.
  • Provided guidance to team members on unit testing / mocking approaches to improve quality, reliability and speed of automated testing.
  • As Director, managed portion of small software development team.
  • Provide general oversight of software projects (greenfield, brownfield, and ongoing break/fix work). Serve as technical architect/team lead as needed.
  • General focus on process improvement, friction reduction, and paying down technical debt within the Engineering department. Revamped the build infrastructure and scripts to make them reliable, repeatable, transparent, and maintainable by anyone on the dev team, reducing risk and maintenance burden. Introduced and maintained Confluence for internal reference and design documentation for product components and ongoing project team information sharing.
  • Lead developer for InRule for Microsoft Dynamics CRM, integrating the company's business rules management suite with Microsoft's CRM platform, opening a new customer segment for the company.
  • Lead developer for rewrite of complex Windows installer for flagship product suite to have a completely custom, WPF-based UI. Architected a framework solution that is used for all company products, targeting ease of maintainability and extensibility over time while requiring little ramp-up time for developers. Developed a testing harness that runs automated smoke tests of the installer across a dozen operating systems with multiple configurations on Microsoft Azure Virtual Machines, spinning up/tearing down the environments for each test run and collecting and aggregating the results across environments, all from a scheduled CI server job.

Wisconsin Dells, Wisconsin

That Conference is an annual 3-day technology conference with approx. 1000 professionals attending over 150 sessions in a family-friendly environment.

Lead Website Developer / Committee Member (Volunteer)

Jan 2014–Sep 2015

  • Lead web developer of thatconference.com for 2014 and 2015 conferences, including complete overhaul of site to utilize mobile-friendly responsive design and allow year-over-year reuse.
  • Served on core planning team and session selection committee.

Chicago, Illinois

CSG is a business support solutions and services company serving the majority of top 100 global communications service providers.

Sr. Software Engineer

Jan 2011–Mar 2012

  • Developed client- and service-side code for large, service-oriented system backing the billing and configuration engines for cable, satellite, and telecom customers. Worked with WinForms, WCF and ASMX/SOAP web services (C#/.Net 4) with an eye for performance improvements and refactoring to reduce long-term system maintenance efforts.
  • Selected for strategic team to quickly develop new edition of key product line.
  • Drove company implementation of SonarQube analysis engine for company-wide code quality reporting, providing key quantitative metrics to assist with technical debt draw-down.

Chicago, Illinois

West Monroe Partners is a full-service business and technology consulting firm focusing on clients in the middle-market.

Architect

Oct 2009–Jan 2011

Sr. Consultant

Sep 2008–Oct 2009

  • Served as technical architect and assisting project manager during a 2-year engagement performing a complete system redesign for trading firm order entry / product management web application. Led mixed development team of both client and firm resources, with 15 developers on project at peak.
    • Migrated client development/PM team to .Net framework and Agile project management methodology, object– oriented programming principals, unit testing, mocking, and continuous integration frameworks.
    • Served as day-to-day leadership representative for firm, including daily direct contact with client CIO.
  • Served as career manager for two technical consultants and provided project and annual review performance feedback, coaching, and advisement to junior members of the department.
  • Member of the six-person application development competency committee which helped steer solution-line initiatives for training sessions, methodology development, software selection, standards generation, certification needs.
  • Served as a senior developer on multiple short client projects for custom software development, primarily creating dynamic, data-driven websites (ASP.Net/C#).

Wayport, Inc.

(now AT&T WiFi Services)

Austin, Texas & Oak Brook, Illinois

Wayport designed and developed software for organizations over its carrier grade network infrastructure. With more than 13,000 locations, Wayport was one of the world's largest providers of high-speed Internet access, including Wi-Fi and back office networks in McDonald's, Starbucks and other retail outlets, major hotels and airports before being acquired by AT&T in 2008.

Engineering Liaison to McDonald’s Corp Acct (Software Engineer III) Oak Brook, IL

Jun 2006–Sep 2008

Software Engineering Lead, SOX & PCI

Apr 2006–Mar 2007

Software Release and QA Manager

Oct 2003–Apr 2006

Software Engineer

Jul 2001–Oct 2003

Software Engineering Intern

Sep 2000–Jul 2001

  • Technical subject matter expert for largest corporate account, onsite at McDonald’s US corporate headquarters.
  • Directly interacted with McDonald’s IT Foundation Services team to plan, implement, and support initiatives including requirements elicitation and analysis. Served as point of contact for coordinating, planning, and communicating McDonald’s projects that required Wayport Engineering resources.
  • Technical lead for Payment Card Industry Data Security Standards (PCI DSS) and Sarbanes-Oxley (SOX) compliance from Engineering and IT departments. Represented both groups on company SOX compliance team, consisting of company CFO, VPs and Directors. Developed initial compliance plan and draft policies for company. Primary technical contact for compliance consulting and auditing firms.
  • Built out software QA group: hired staff, designed, and purchased testing environment hardware and software, managed QA team schedules and priorities, performed staff evaluations.
  • Managed company software releases to thousands of distributed servers world-wide while maintaining network API compatibility between systems throughout the asynchronous release process. Ensured compliance with company’s and partner’s change management policies/contracts. Member of Change Management Review Board.
  • Designed and implemented automated software deployment system that facilitated upgrades of distributed Linux servers, drastically improving reliability of software release process and eliminating need for additional personnel to drive deployment.
  • Modified packaging and logical design of core web services to provide redundancy/scalability via server clusters.
  • Designed and implemented key system software on company's distributed systems, including core billing web APIs, firewall management system, and web proxy system, as well as internal and external tools, including company's custom call center software/ticket tracking system.
  • Redesigned and implemented primary web user interface framework that increased performance of web pages by more than 100x under heavy utilization and decreased load on the server by over 50x.
  • Wrote load generation scripts and traffic analysis tools to find deadlock conditions in web server’s SSL module under heavy load. Worked with external module developer to eliminate the defects.
  • Rewrote/merged distributed billing system into a better organized, maintainable, and secure API. Discovered and resolved several security vulnerabilities and improved reliability.