Hello, I'm Michael!

I'm a software engineer.

Voluptatem dignissimos provident quasi

Test to software engineer that is focused on blending into a team's style and preferences while collaborating heavily in the software development lifecycle, its processes and documentation. Specialist in the PDF document type, email standards, natural language processing of speech, and continuous integration particularly in establishing test automation.

Happy Clients consequuntur voluptas nostrum aliquid ipsam architecto ut.

Projects

  • Xerox DigiPath Makeready
  • Xerox Production Printing (IPP)
  • Xerox Express to Print
  • Xerox FreeFlow Core
  • DirecTV Genie Voice Search
  • DirecTV Voice Biometrics
  • DirecTV Cloud Recommendations
  • RPost Encrypted RMail and eSign

Years of experience development, testing, and team lead

Patents

  • #10,878,200: Method and system for generating dynamic text responses for display after a search
  • #9,414,004: Method for combining voice signals to form a continuous conversation in performing a voice search

Skills

Languages, tools, and processes.

C# 100%
Java 90%
C++ 75%
Objective-C 80%
Rust 90%
Go 55%

Resume

Magnam dolores commodi suscipit. Necessitatibus eius consequatur ex aliquid fuga eum quidem. Sit sint consectetur velit. Quisquam quos quisquam cupiditate. Et nemo qui impedit suscipit alias ea. Quia fugiat sit in iste officiis commodi quidem hic quas.

EXPERIENCE

Software Engineer, Core Services - RPost, August 2016 – March 2021

  • Build tools for fast aggregation of logs and system artifacts to respond to customer escalations and production system problems. Monitoring tools for storage, RabbitMQ queues, and REST service polling written in .NET Core.

  • Transparent replacement of file services for transferring 500000+ weekly email files in a Linux gateway written in Go and libraries for Amazon Simple Storage Service (S3) in C# for archiving similar to Amazon Intelligent Tiering.

  • Applied Behavior Driven Development (BDD) to generate specification documents using Pickles, example scenarios in SpecFlow. 2500+ integration/system automated tests executed with MSTest/NUnit in C# and several web sites automated with Selenium, for Chrome and Firefox web drivers.

  • Documented, designed, and implemented continuous integration and deployment (CI/CD) using Jenkins Groovy pipeline scripts, MSBuild, and batch scripts to bring consistency and formalization to build process. Include manually triggered branch builds and JMeter Beanshell load test projects in Jenkins.

  • Provide leadership for offshore QA team in test process, build and deployment procedures, and status and reporting protocols with management. Oversee transition of automated test framework to QA team.

Sr. Software Engineer, FreeFlow Core — Xerox, May 2014 – August 2016

  • Ported the production printing stack in FreeFlow Core to .NET from Java, resulting in performance improvement of 10% faster transmission of >2 GB documents and unbounded the connection limitation beyond 5 concurrent.

  • Extended SNMP support and proprietary Xerox TCP-based library for frequent device status and management, encapsulating into a backend library for retrieving alerts, consumables, and job data in C#.

  • Automated 600+ C# MSTest and NUnit end-to-end tests for printing stack to quickly diagnose and identify problem layer: client, adapter, or library.

Principal Engineer I, Personalization and Automation — DIRECTV, July 2013 - April 2015

  • QA lead for Cloud Recommendations for personalization of DIRECTV mobile, set-top box, and web interfaces based on Cloudera Hadoop solution comprised of HBase, Hive, Pig, and Impala with ingestion from daily 30 GB time-series data sourced from an Oracle database.

  • Delivered an automation platform for continuous testing of DIRECTV set-top boxes, head-end, and internet services controlled by REST services with reliance on Tesseract and OpenCV for computer vision.

Staff Engineer III, Voice Search — DIRECTV, October 2012 - June 2013

  • Assumed leadership of a team to develop J2EE solutions to monitor REST service performance meeting SLAs, including the creation of dashboard, scheduler, and notifier for engineering, V- and D-level management to appraise voice search accuracy for approximately 1500 critical path television, movies, sporting events, cast & crew, and home automation intents.

  • Constructed test automation framework in Java to validate in-house Natural Language Processing (NLP) engine with underlying Support-Vector Machine (SVM). Utilized recorded voice-samples and text-to-speech driven through Java audio streaming app against Gracenote TV guide metadata.

Engineer Specialist I, System Applications — Xerox, Late 2010 - September 2012

  • Worked on FreeFlow Core workflow automation, split on WPF/XAML view (UI) and view-model parts of MVVM for a Silverlight C# application with deployments of on-premise, virtual private cloud, and public cloud models.

  • Develop printing service integration into FreeFlow Core by relaying Internet Printing Protocol (IPP) to Java socket communication to the SOAP protocol (JAX-WS) with destination of Windows Communication Foundation (WCF) using Apache CXF WSDL-first tooling.

Senior Engineer, System Applications — Xerox, 2009 - Late 2010

  • Lead engineer for the FreeFlow Production Print team requiring mentoring of on- and off-shore software developers, final-stop customer problem resolution, and full stack Win32 implementations in C#, C++, and Java.

  • Hardened Network Agent file watching software with process stream troubles, large and small memory leaks, and thread contention through inspection of C++ code and heap analysis with WinDbg.

  • Developed an article aggregation tool in Java EJB around Composite Entity and Data Access Object patterns for Really Simple Syndication (RSS) as a universal notification for automated test and continuous build status.

System Applications Engineer — Xerox, 2008 - 2009

  • Inaugural engineer on FreeFlow Express to Print, as WPF/XAML front-end implementor focused on imaged document domains, such as calendar and books. Largely mouse behavior events (drag-and-drop, multi-selection, page controls) on user-experience (UI/UX) and expedient parallel Adobe PDF processing and previewing.

  • Teamed with senior engineers to re-engineer a heavyweight server-centric PostScript and PDF document conversion service to a lightweight client based on a Template-Builder-Strategy design pattern leveraging P/Invoke to combine managed C#/C++ and unmanaged C++ libraries between Adobe PDF Library, GhostScript, Microsoft Office, ImageMagick and iText.

Test Automation and Software Configuration Management Engineer — Xerox, Late 2006 - 2008

  • Created an automated test discovery and execution engine built around C# dynamic library reflection and static code analysis. Produced continuous integration (CI) templates for solutions and projects for department use.

  • Established over 600 unit and end-to-end tests for legacy codebases varying from C++ MFC document generation libraries to C# managed production service libraries in CppUnit, NUnit, and JUnit.

Test and Internal Tools Engineer— Xerox, 2001 - Late 2006

  • Automated testplan status in Excel with bug reporting system through SQL queries to IBM DB2 database and Visual Basic for Applications (VBA).

  • Automated aspects of installation validation using SilkTest and AutoIt including medium, performance, third-party software interactions, general application smoke-tests performing basic print production workflows.

Testimonials

Magnam dolores commodi suscipit. Necessitatibus eius consequatur ex aliquid fuga eum quidem. Sit sint consectetur velit. Quisquam quos quisquam cupiditate. Et nemo qui impedit suscipit alias ea. Quia fugiat sit in iste officiis commodi quidem hic quas.

It's rare to have a manager that is also a mentor and a friend, but I did when I worked with Michael. He was my lead for almost 1.5 years while working on DirecTV's projects. Talented, enthusiastic, responsible, diligent and thoughtful are the words coming to my mind when thinking about him. Thanks to him, our team was never put under high pressure since he can figure out which task would be asked and advise us so well.. He is also good at Linux, network, data analysis, problem-solving and troubleshooting the issues so he would be a great asset to any team. I've learnt a lot from him and am always looking forward to have a chance to work with him again in the future.

Phuong (Vivian) Thai

Software Engineer @ Rakuten

Contact

You can contact me through LinkedIn.

Michael Yan

Software Engineer.