Scroll To View More
Gary Wong

Gary Wong

Flushing, United States
Member since November 16, 2015
Gary is a self-motivated and detail-oriented software engineer with work experience in various programming languages, libraries, and frameworks. His principal interests are in computer-human interaction, algorithm analysis, domain driven design, and distributed systems design. He loves working on innovative products that meaningfully impacts people's lives.
Gary is now available for hire
Portfolio
Experience
  • Java, 10 years
  • JavaScript, 7 years
  • Back-end Architecture, 6 years
  • Spring, 4 years
  • Domain-driven Development, 4 years
  • HATEOAS, 4 years
  • SOLID Principles, 3 years
  • Play Framework, 1 year
Flushing, United States
Availability
Part-time
Preferred Environment
Mac, Linux, IntelliJ, Sublime, Git, Mercurial, SVN
The most amazing...
...thing I've developed is a highly scalable RESTful API system with HATEOAS architecture that powers public websites, web services, and a mobile client.
Employment
  • Software Engineer
    2017 - PRESENT
    Flatiron Health
    • To be announced.
    Technologies: C#, Python, React
  • Senior Software Engineer
    2015 - 2017
    OnDeck Capital
    • Promoted continuous delivery that involves a Jenkins build and deployment pipeline, an automated unit, integration, GUI (Selenium), and web service test frameworks as well as a code quality analyzer (SonarCube) to ensure the software can be reliably released at any time in short development cycles.
    • Partitioned a monolithic application into standalone microservices that helps the company to scale products and adapt services easily, and enable faster and more agile development cycles with fully automated deployment processes.
    • Develop a REST based micro-service report generator API using Java 8, Play! Framework, and PostgreSQL that automatically generates monthly statement report for all customers to track monthly loan payoff progress.
    Technologies: Java8, JUnit, Play, Spring, Spring Boot, Jetty, Tomcat, PostgreSQL, Vagrant, Ansible, Jenkins, SonarQube, New Relic, Kibana, Git, Makefile
  • Full-Stack Software Engineer
    2013 - 2015
    theLadders.com
    • Developed a dynamic single-page application with Backbone.js data-structuring and user interface primitives for the new public web sites.
    • Promoted domain driven design, test driven development, unit tests,, and code reviews that often cut the amount of code in individual files in half as well as reduced defects.
    • Contributed greatly to increase code quality and productivity through leadership and guidance in areas such as test/behavior driven development, refactoring, pair programming, and agile estimation and planning.
    • Participated in rotational pager duty to provide on-call support including off-hours server administration and problem escalation.
    Technologies: Java, Spring, Jersey, MyBatis, JUnit, Mockito, JavaScript, Backbone, Require.js, Common.js, Jasmine, Casper.js, Grunt, Sass, Apache Storm, Scala, RabbitMQ, MySQL, Riak, Jetty, Mercurial, Selenium, Jenkins, Splunk, Mixpanel, Google Tag Manager
  • Software Engineer
    2011 - 2013
    UBS Financial Services
    • Developed a multi-tier scalable and maintainable trade forensic monitor tool that supports various financial products from browser-side technologies, server-side web application servers to a database storage system.
    • Reduced the production troubleshooting time from days to minutes by implementing a dynamic generated sequence diagram using jQuery to illustrate the business activities throughout the life-cycle of a trade order across multiple tiers.
    • Implemented an automated test engine integration; reduced time and memory to generate test cases by 60% by redesigning the recursive combination generator to iterative.
    • Optimized and enhanced browser rendering performance on the client side by 30% as well as handling JavaScript memory usage to avoid memory leaks.
    Technologies: Java, Spring, Junit, JavaScript, ExtJS, jQuery, SVN, Tomcat, WebSphere
  • Teacher Assistant
    2009 - 2011
    Computer Science Department, Stony Brook University
    • Worked for 2 years aiding courses like internet commerce programming, user interface development, and database management.
    • Gave students more knowledge in the subject by bringing real life examples to help students understand the logical flow.
    • Held TA sessions and office hours for helping students to prepare the exams and the software demonstrations.
    Technologies: Java, Java Swing, J2EE, JavaScript, jQuery, Ajax, MySQL, SQL, Software Development Process, Design Principles, User Interface Development, Paper Prototyping
  • IT Intern
    2010 - 2010
    UBS Financial Services
    • Optimized Java Swing GUI response time by 200% by executing the long-running task in a separate thread and scaling the application to handle more tasks efficiently.
    • Designed and implemented a web-based survey questionnaire using jQuery, PHP, and MySQL for the Desktop Transformation Windows 7 Migration Project that collects team’s application inventory for their job functions.
    • Gave a tech talk presentation and introduced new advanced technology on Comet/Reverse Ajax at the UBS developer conference.
    Technologies: Java, JavaScript, jQuery, PHP, MySQL
  • IT Software Developer
    2010 - 2010
    DFG Investment Advisers
    • Created a scheduler to collect financial data and reports for daily business operations from multiple web RESTful API in XML, JSON, and CSV format.
    • Implemented and maintained a flexible, automated browser based test by using real time data from database and WATIN which operates by simulating a browser.
    • Optimized and enhanced browser rendering performance on the client side by 50% as well as handling JavaScript memory usage to avoid a memory leak.
    Technologies: Java, JavaScript, jQuery, C#, WatiN, SVN
Experience
  • Trade Forensic Monitor (Development)

    Trade Forensic Monitor collects all the business activities of a trade in real-time, and dynamically renders all the events that happen throughout the life cycle of a trade in a sequence diagram. This is done so that the user can easily and efficiently see what the current status of a trade order, and what is going on and what is missing. This helps and reduces the production troubleshooting time from days to seconds.

  • HATEOAS RESTful API (Development)

    A highly scalable RESTful API system with Hypermedia as the (HATEOAS) architectural pattern that powers public websites, web services, tablets, and mobile devices. The REST interfaces that is provided by the application server dictates what the domain can do and see.

Skills
  • Languages
    Java, Python, JavaScript, SQL, Java 8, C#, Scala
  • Frameworks
    Play Framework, ASP.NET Web API, Jasmine, Mockito, JUnit, Spring, Redux, ZURB Foundation, Express.js, Selenium, Jersey, React Native, Google Guava, Google Guice
  • Libraries/APIs
    REST API, React, JDBC, MyBatis, jQuery, RequireJS, Backbone.js, Node.js
  • Tools
    Trello, Eclipse IDE, HipChat, SonarQube, Jenkins, Maven, SBT, Makefile, Sublime Text 3, ITerm, IntelliJ IDEA, Mercurial, JIRA, Git, Ansible, CasperJS, Jetty, Kibana, Varnish, Apache Tomcat, Grunt, Splunk, Subversion (SVN), Apache Storm
  • Paradigms
    KISS, REST, Kanban, SOLID Principles, Continuous Delivery (CD), UI Design, Gang of Four (GOF) Design Patterns, Object-oriented Programming (OOP), Test-driven Development (TDD), Human Interface Design, Behavior-driven Development (BDD), Scrum, Domain-driven Development, Design Patterns, Service-oriented Architecture (SOA), Back-end Architecture, Object-oriented Design (OOD), Microservices, Agile Software Development, Pair programming, Test Automation, Refactoring, Rapid Prototyping
  • Other
    HATEOAS, APIs, Product Ownership, Single-page Applications (SPA), Algorithms, Back-end Development, RESTful Web Services, System Design, Data Structures, Product Development, Product Management, Project Management, eCommerce, Prototyping, Leadership, API Design, Graphite, log4j, HTTPS, TCP/IP, CommonJS, Scalability
  • Platforms
    Windows, Mac OS, Software Design Patterns, Linux, Oracle, Mixpanel, New Relic
  • Storage
    PostgreSQL, MySQL, Elasticsearch, MongoDB, Riak, Database Modeling
Education
  • Master of Science in Computer Science
    2010 - 2011
    Stony Brook University - Stony Brook, NY, USA
  • Bachelor of Science in Computer Science
    2007 - 2010
    Stony Brook University - Stony Brook, NY, USA
I really like this profile
Share it with others