Mike Hutton,美国罗德岛州的开发商
Mike is available for hire
Hire Mike

Mike Hutton

Verified Expert  in Engineering

软件架构开发人员

Location
罗德岛,美国
Toptal Member Since
May 27, 2015

Mike是一名软件架构师和开发人员,拥有超过25年的大型关键任务系统开发经验. 他目前专注于Java和J2EE开发, C++ and C development, 以及物联网的嵌入式系统. 此外,他是国际公认的彩票博彩系统领域的专家. 在过去的16年里,Mike一直在为不同地域的团队提供解决方案.

Portfolio

AC Research, Ltd.
C#.. NET WinForms, JavaScript, AngularJS, Yocto, C, c++, MySQL集群,MySQL...
GTECH Corporation
JavaScript, HTML, Java, Unix, c++,架构,Web应用设计,市场营销组合...
GTECH Corporation
Rational统一过程(RUP), UML, c++, C,软件架构...

Experience

Availability

Part-time

Preferred Environment

Linux, Visual Studio, Eclipse, Windows, IntelliJ IDEA

The most amazing...

...我推出的在线系统已经交付给数千个地点和数百万人.

Work Experience

President/CTO

1998 - PRESENT
AC Research, Ltd.
  • 主导设计开发了基于j2ee的中国体彩视频彩票游戏服务器.
  • 为中国体彩构建基于国民账户的彩票博彩系统项目进行设计和咨询.
  • Architected, designed, 为上海市福利彩票开发了基于j2ee的移动彩票销售网关. 该网关实现了基于互联网的移动销售应用程序提供商与彩票传统中央游戏服务器之间的集成.
  • 设计并领导了一个基于j2ee的互联网医疗调查系统的设计与开发.
  • 为电信行业的客户使用J2EE应用服务器和Java技术开发下一代电话交换系统的先进技术.
  • 被任命为英国高等法院在彩票技术领域的原告的专家证人,涉及一个独立的英国彩票运营商对英国电信的成功诉讼.
  • Architected, developed, 并领导设计了Norsk Tipping AS的下一代彩票POS终端. POS终端是最早完全基于PC平台的终端之一(来自IBM), 并且完全用Java实现.
  • 为Norsk Tipping提供了一份技术分析和建议,内容涉及将先进的J2EE技术整合到他们基于internet的分销渠道中.
  • 开发了一个创新的TCP代理解决方案,以克服Microsoft Windows Server 2008远程访问服务的可伸缩性问题.
  • 为一家加州汽车制造商提供咨询支持,涉及第三方提供的基于jee的制造自动化系统.
Technologies: C#.. NET WinForms, JavaScript, AngularJS, Yocto, C, c++, MySQL集群,MySQL, Jetty, Java EE, Java, Software Architecture, Technical Leadership, Requirements Analysis

首席顾问-新业务发展

1996 - 1998
GTECH Corporation
  • 领导一个跨学科团队,制定整体战略, business plan, marketing plan, 和技术方法,以支持GTECH进入互联网游戏市场.
  • 领导了一个提供多种互联网产品原型的项目, 包括基于网络的彩票欧博体育app下载服务和基于java的互联网消费者投注服务.
  • 为与合作和收购相关的企业尽职调查活动提供技术咨询.
  • 与公司人力资源部合作,运营公司的大学合作项目和实习项目. 参与的大学包括麻省理工学院, 芝加哥大学, 以及史蒂文斯理工学院.
  • Researched, designed, 并建立了原始的系统原型,以支持潜在的非彩票业务机会.
技术:JavaScript, HTML, Java, Unix, c++,架构,Web应用设计,市场营销组合, Technical Leadership, Requirements Analysis

软件架构组总监

1995 - 1996
GTECH Corporation
  • 管理内部R&D和咨询团队由公司最资深的工程专业人士组成.
  • 领导一个大型战略研究项目,目的是为公司下一代在线系统开发远景和架构. 产生了对未来的创新愿景, 以及一份全面的技术说明书, 这成为公司正在进行的产品开发的参考指南.
  • 进行研究,包括试点项目,旨在了解各种新技术的适用性, 将最佳实践和经验教训引入主线组织.
Technologies: Rational统一过程(RUP), UML, c++, C,软件架构, Technical Leadership

软件通信组总监

1993 - 1995
GTECH Corporation
  • 管理负责全球开发的组织, deployment, 以及运营我们客户彩票POS网络所需的通信软件的维护.
  • 建立了软件通信组织作为正式功能. 定义团队的愿景、使命和章程. 执行组织设计、工作流程定义和组织人员配置.
  • 协调研究, design, 并及时为英国国家彩票提供世界上最大的彩票系统的网络系统.
技术:体系结构, Telecommunications, Fortran, Java, Management, Assembly, Embedded Systems, 高可用性灾难恢复(HADR), Internationalization, Software Architecture, Technical Leadership

高级技术顾问-通信系统工程

1989 - 1993
GTECH Corporation
  • 领导团队负责公司欧洲通信系统整体架构的开发. 交付一组描述体系结构的简明技术规范, interfaces, 以及系统的协议.
  • 构思并管理了一项产品开发工作,开拓了廉价的使用, 现成的PC技术作为在线系统网络接口前端的基础. 完成项目后,部署在线/POS通信系统的资本成本降低了65%以上. 领导软件开发,并与硬件供应商(如Intel和Emulex)合作设计底层硬件.
技术:需求分析

纽约市疾控中心COVID-19疫苗接种计划

作为负责维护纽约市全市免疫登记(CIR)的团队的高级成员, 我是首席工程师,负责IT基础设施的建设和持续管理,以及支持纽约市推出SARS-COV-2疫苗的应用程序.

这包括改造该市现有的疫苗接种跟踪和疫苗分发基础设施, 最初是为了支持跟踪儿童疫苗接种和公共资助的儿童疫苗的分发而开发的, 能够支持订单的物流, receiving, storage, inventory management, 以及SARS-COV-2疫苗的分发, 同时追踪纽约市市区数百万成年人的疫苗接种情况.

这是在不断变化的临床和行政环境中在公众的密切监督下完成的, 需求每天都在变化.

所采用的技术方法是将一小组基于Spring boot的微服务移植到CIR现有的基于j2ee的应用程序系统上, 同时对系统本身进行微创性的改变. 这使我们能够非常灵活地适应不断变化的需求.

物联网产品架构咨询(通过Toptal)

为开发基于云的物联网(IoT)产品的组织提供架构和设计咨询,以监控现场的重型设备. 该系统主要基于利用AWS物联网产品套件的托管服务. 客户面临着一个非常紧迫的MVP船交付时间表,需要帮助将其交付出去.

大型美国企业的电子病历集成.S. 健康保险公司(通过Toptal)

开发了基于标准的FHIR, CDS Hooks)和专有的EHR集成,用于使用基于Spring Boot微服务的解决方案的大型健康保险公司. 微服务是基于开源规范从零开始创建的,随后支持了与EHR合作伙伴组织的成功集成测试.

Azure Spring Boot微服务(通过Toptal)

一家总部位于美国的跨国重型设备制造商正在开发一个Spring Boot REST微服务,为其全球经销商网络提供设备维护支持数据,该微服务遇到了性能和可靠性问题. 该服务作为Azure AppService部署在Tomcat容器中.

我加入了开发团队,负责审查微服务架构和实现,以消除这些问题. 我发现并纠正了编码设计中的缺陷,这些缺陷是导致大多数可靠性问题的原因. 然后,我开发了一套JMeter测试,使我们能够查明和纠正由微服务软件本身以及Azure AppService云部署特征引起的性能问题.

我们成功地改善了发现的问题,服务能够可靠地满足其性能需求. 它现在已经在全球的Azure云上投入生产.

纽约市健康和精神卫生部- CIR

http://www1.nyc.gov/site/doh/providers/reporting-and-services/citywide-immunization-registry-cir.page
作为一个由高级IT通才组成的小团队的成员, 我负责支持, maintenance, 增强IT基础设施和应用程序,支持该部门的全市免疫登记处(CIR). 这包括对CIR旗舰应用程序的全栈支持和增强, 在线注册:一个面向公众的网络应用程序,纽约市成千上万的医疗保健提供者使用它来记录免疫接种情况, 跟踪疫苗库存, 并提供其他城市机构使用的免疫和其他健康记录.g., schools or daycares).

最近成功完成了一个迁移CIR数据库的项目, 包括从Oracle到PostgreSQL的依赖客户端应用程序.

可靠和水平可扩展的NoSQL数据存储(通过Toptal)

The client, 印度一家快速发展的网络初创公司, 在传统的基于sql的数据层中面临着越来越复杂的模式, 这阻碍了他们快速引进新开发者的能力. 快速增长和向新市场的积极扩张也使他们当前基于mysql的基础设施的可伸缩性限制变得紧张.

与公司首席技术官合作, I researched, designed, 并开发了一个轻量级NoSQL数据存储的原型,为客户产品的所有特定用例提供持久的数据存储.

数据存储架构由一组分片的MySQL数据库服务器组成, 分为索引分片和数据分片. 应用程序数据以JSON字符串的形式存储在数据分片中, 使用Apache Avro为JSON数据提供模式支持.

数据存储接口被实现为一个Swagger文档化的REST API,暴露了类似crud的语义. 该服务支持用Java和PHP生成代码, 允许客户端从数据存储读取和写入应用层对象,而无需操作甚至不知道底层JSON表示.

该系统是用Java实现的,作为一个基于Spring boot的微服务.

基于国民账户的彩票系统架构

中国体彩基于国民账户的彩票博彩系统建设项目建筑与设计顾问. 系统采用面向服务的架构,支持玩家账号管理, 零售地点管理, 游戏服务界面.
它的设计允许使用标准化插件接口无缝集成不同的第三方游戏提供商.

该系统旨在扩展到数百万玩家账户, 数以千计的实体游戏地点和任意数量的游戏内容提供商. 它既支持陆上游戏,也支持在线游戏.

一旦架构完成, 我进行了零售位置和游戏机管理模块的设计和初步开发, 然后继续开发与该框架一起使用的第一个游戏服务器实现.

架构和开发完全从美国远程进行, 只需要在纽约举行为期四天的头脑风暴会议,就可以启动这个项目.

该系统于2015年1月在海南省开始运行.

高性能法医磁盘成像仪(通过Toptal)

我开发了用于数字取证应用的高性能并行流水线磁盘成像软件. 该软件是用c++开发的,运行在Linux和Windows平台上.

高性能视频彩票游戏服务器

针对中国市场开发的基于j2ee的视频彩票游戏服务器, 完全基于开源技术(JBoss 7)构建的内存数据库(MySQL Cluster). 它支持多达2万台游戏机和每秒1500次交易.

该系统没有单点故障,并且可以水平扩展. 它采用先进的加密技术,以确保安全性和完整性,并完全国际化, 中英文动态切换.

服务器与使用安全REST接口的帐户管理系统接口,并通过集群故障转移持久地实时维护每台机器的游戏状态, system restarts, and machine failures. 它采用插件架构的模块,允许新游戏添加作为预打包, digitally-signed Java. 它通过了中国政府对安全性和完整性的测试,并包括一个单独的交钥匙审计系统来审计每笔交易, verify, 并对软件模块进行数字签名. 它是使用基于Jetty和Apache Derby (JavaDB)的GWT前端和REST后端实现的。. 服务器是远程开发的, 在18个月的项目中,只有10天的时间在现场.

Windows POS平台后端服务器集成

我开发了一个平台框架和相关的Windows服务,以便集成一个Windows 7嵌入式POS设备,该设备可以控制位于地理位置不同的场所(酒吧)的游戏机, hotels, etc.),设有中央网络管理服务(NMS)和内容分发服务(DLS)。.

该项目涉及集成现有的基于java的windows服务,该服务为中心服务提供基本网关连接器, 并开发了两个新的c# Windows服务,允许POS平台上的应用程序组件通过Java网关与中心服务进行通信. c#服务使用专有的基于TCP/JSON的协议与Java网关通信, 并公开WCF REST端点以与POS应用程序通信.

该项目主要是用c#和一些Java完成的,并使用了SQL Server Express DB.

老虎机接口板

我将专有的遗留c++游戏机控制器代码库从基于Red Hat linux的服务器平台迁移到现成的飞思卡尔I.基于mx6的系统模块(EDM-1). 该应用程序是一个老角机接口板(SMIB),将安装在视频彩票终端(vlt)中,以便将机器的本机专有串行协议转换为可以在LAN上运行的基于tcp的协议.

该项目包括使用yocto嵌入式Linux开发环境为目标硬件构建适当的嵌入式Linux内核和文件系统映像,并根据需要调整应用程序构建过程. 迁移后的代码库被移交给客户的工程团队,以进一步适应他们的专有I.MX6 SMIB.

这个项目完全是远程完成的,使用的组件来自客户和我自己的实验室系统和设备.

该产品预计将于2015年底部署到南澳大利亚的数百个地点.

移动网关彩票销售

我为上海福利彩票公司(SWLC)设计并开发了高性能移动网关系统。.

该系统使不同移动应用程序提供商获得的彩票购买能够在彩票的遗留后端交易处理系统上执行.

该系统基于JBoss 7实现,使用JAX-RS REST API与移动应用程序提供商通信,使用自定义JCA资源适配器与彩票专有的后端事务处理器通信. 它采用JPA/MySQL作为持久化解决方案.

该系统为潜在的数千万移动用户提供了一个门户, 因此对响应时间和事务率都有非常严格的要求.

它几乎完全是在美国远程开发的, 在上海只有五天的现场时间来支持最初的生产部署.

该系统于2013年3月在上海投入使用.

POS VLT控制器的改进和持续维护

我负责根据需要维护和增强基于JBoss 6的“嵌入式”POS产品.

该产品的功能是作为游戏机(vlt)在不同地理位置的本地控制器(“站点控制器”). 它通过TLS使用标准的基于xml的协议(G2S)与游戏机通信. 它还使用类似的协议与中央州/省管理系统进行通信. 最初的实现是基于JBoss 6和PostgreSQL数据库.

客户从未能交付功能性产品的合作伙伴团队那里继承了代码库. 在无数次交战中, 我对代码库进行了重构和重做,使其成为一个功能性产品, 并根据要求添加功能和增强功能, 最终迁移到JBoss 7. 该产品目前用于演示目的,并被认为在该角色中非常成功.

移动电子即时票务游戏服务器

我设计并开发了一个高性能的电子即时票务(EIT)游戏服务器, 作为用于济南移动EIT销售系统的SOA中的组件使用, China.

eit实际上相当于“刮刮乐”彩票. 而不是纸质票, 玩家使用移动应用程序获得加密门票, 然后他们使用移动应用程序“刮”. 对于任何特定的EIT游戏, 每个奖项级别都有固定数量的eit和预定数量的获奖者. 这些EIT池是由专有算法生成并加密的.

I developed the server, 使EIT池文件能够安全地加载, verified, 并通过REST接口分发给移动用户. 我开发了核心代码、ui和REST API.

我设计了使用公钥加密的技术,以确保EIT文件只能被生成它们的游戏服务器读取, 并开发了加密技术,用于保护运输中的“票”,并确保EIT只有购买者才能阅读.

该系统是在JBoss 7上使用Java实现的,使用JSF作为UI, JPA/MySQL作为持久层.

网上医疗调查系统

我是为一家医疗度量公司创建基于j2ee的互联网医疗调查系统的架构师和主要开发人员.

该系统是完全交钥匙的,允许研究人员为目标人群设计复杂的定制医疗调查,然后将其部署在互联网上,而无需任何增量网络或后端开发.

实现是在JBoss 5上完成的,使用JSP、Hibernate和MySQL.

拨号WAN TCP代理服务

本人开发了一个串口TCP代理解决方案, implemented in C++, 用于地理上分布式系统上的TCP客户端通过安全拨号连接与中央服务器通信. 该解决方案对客户机和服务器都是透明的, 谁认为他们在用普通的TCP进行通信. 我的客户计划使用MS远程访问服务(RAS)来允许本地控制器与中央服务器通信, 但当时Windows Server 2008上的RAS无法处理这么多的连接.

我构建了一个系统,其中远程Linux客户机上的代理应用程序在TCP端口上侦听传入的连接请求,并将它们转发给代理服务器, 它通过串行连接接收请求并模拟RAS服务, 将其转发到分配给客户端的TCP端口上的中央服务器. The connection is accepted by the server and then at the remote side; data sent between the client and server is forwarded over the serial link.

代理服务可以处理多个端口对,在生产环境中用于代理RSync协议. 串行链路使用AES加密和使用经南澳大利亚博彩监管机构认证的专有协议进行认证.

彩票零售商管理系统集成

我开发了一个基于web服务的接口,该接口允许马里兰彩票公司在彩票的UniSys后端业务系统和POS系统运营商专有的基于Windows server的系统之间集成零售商管理功能.

Just for background, in the US, 州彩票机构通常将在线零售商销售点网络(POS)的部署和运营分包给专业供应商. 彩票公司自己将管理其零售商(便利店)的后台业务运营, etc.). However, 关于零售商的信息子集必须与POS供应商共享,以便供应商正确地提供和服务零售商的彩票销售点设备.

我开发的服务允许彩票通过基于SOAP rpc的web服务将更新推送到在线供应商的系统. 该服务完全自动化,除了验证报告数据外,不需要任何操作干预. 这取代了需要在两个系统中冗余输入零售商信息的手动过程.

该系统是在IIS上用c#语言使用ASP实现的.NET technology. 它自2006年10月以来一直在运行.

Languages

Java, C, Assembly, Pascal, C#, C++, HTML, HTML5, SQL, UML, Fortran, JavaScript, Python 3, PHP, Python

Libraries/APIs

REST api, React, OpenAPI, Node.js

Tools

Java Concurrency, WildFly, Apache Tomcat, Apache Maven, Subversion (SVN), Apache JMeter, Eclipse IDE, Microsoft Visual Studio, Visual Studio, C#.NET WinForms, Jetty, CVS, Git, GDB, Apache Ant, Mercurial, Bamboo, Jenkins, TeamCity, IntelliJ IDEA, RabbitMQ, Keycloak, SMART on FHIR, Postman

Paradigms

Socket Programming, Concurrent Programming, 面向服务的架构(SOA), 面向对象设计(OOD), Requirements Analysis, 敏捷软件开发, Microservices架构, Microservices, API Architecture, Unit Testing, Azure DevOps, Automation, 模型-视图-控制器(MVC), 快速医疗互操作性资源(FHIR), DevOps, Management, Web App Design, HL7 FHIR Standard

Platforms

Android, Jakarta EE, Linux, Java EE, JBoss, Eclipse, Unix, 亚马逊网络服务(AWS), Oracle, Amazon EC2, Windows, Embedded Linux, Azure, Docker, AWS IoT Core, AWS Lambda

Other

体系结构、需求 & Specifications, Business Requirements, Front-end Development, Integration, Software Architecture, Web Development, Senior Web, API Design, Software Development, SOAP, GlassFish, APIs, 企业架构, Embedded Systems, Embedded Software, RESTful Microservices, Architectural Modeling, Technical Leadership, Yocto, API Integration, 高可用性灾难恢复(HADR), Internationalization, Marketing Mix, Leadership, HL7, Computer Science, Cloud

Frameworks

雅加达服务器页面(JSP), Spring Boot, Hibernate, Spring, Rational统一过程(RUP), AngularJS, GWT, Windows通信框架(WCF), JUnit, Spring Microservice

Storage

JSON, JBoss AS, PostgreSQL, MySQL, MySQL Clustering, Oracle RDBMS, Apache Derby, Microsoft SQL Server, SQLite, Data Integration, Amazon S3 (AWS S3)

Industry Expertise

Telecommunications

1974 - 1977

计算机科学学士学位

城市学院工程学院-纽约,NY

有效的合作

How to Work with Toptal

在数小时内,而不是数周或数月,我们的网络将为您直接匹配全球行业专家.

1

Share your needs

在与Toptal领域专家的电话中讨论您的需求并细化您的范围.
2

Choose your talent

在24小时内获得专业匹配人才的简短列表,以进行审查,面试和选择.
3

开始你的无风险人才试验

与你选择的人才一起工作,试用最多两周. 只有当你决定雇佣他们时才付钱.

对顶尖人才的需求很大.

Start hiring