Ryan How,西澳大利亚州Busselton的开发商
Ryan is available for hire
Hire Ryan

Ryan How

Verified Expert  in Engineering

Full-stack Developer

Location
西澳大利亚的巴塞尔顿
Toptal Member Since
June 13, 2019

Ryan是一名拥有21年web开发经验的全栈Angular开发人员. 他使用多种后端技术,擅长与国际公司合作, small businesses, and tech startups. 他认为与客户保持良好的工作关系至关重要. 从五岁起就对编程充满热情, Ryan以软件工程学士学位和一等荣誉毕业.

Portfolio

BitWorks
REST api, Web组件,jQuery, vadin, .. NET、Java、Angular、全栈
建筑商的电子商务
Print, MapFish, JPA, PostGIS, PostgreSQL, vadin, Java
技术环境
Microsoft SQL Server,桌面, .NET

Experience

Availability

Part-time

首选的环境

MacOS, Windows, Git, Visual Studio Code

The most amazing...

...是一个端到端的环境监测系统. 它是最前沿的,经受住了时间的考验,全天候工作,10年了,而且还在继续.

Work Experience

Director

2008 - PRESENT
BitWorks
  • Planned, architected, managed, estimated, quoted, delivered, 并从1美元起支持多个软件项目,000 apps to $400,000 systems.
  • Assembled a team, formed procedures, 建立编码标准, created toolchains, deployment pipelines, 以及全生命周期开发的其他方面.
  • 与客户紧密合作,确定使软件项目成功的因素,并跟踪进度以满足这些目标.
  • 获得了丰富的软件项目评估经验, 然后管理和交付这些估计.
  • 为项目提供长期的支持和维护.
  • 根据长期可靠性的最佳实践开发项目, maintainability, 最小的技术债务.
  • 评估和使用广泛的工具和技术,以满足客户需求,重点关注web技术堆栈,包括Java servlet, Apache Tapestry, ASP.NET, .. NET MVC, vadin, jQuery, AngularJS, Angular, Ionic.
  • 获得了丰富的HTML经验, CSS, JavaScript和TypeScript以及相关的浏览器开发工具(Chrome, Safari, and Firefox).
技术:REST api, Web组件,jQuery, vadin, .. NET、Java、Angular、全栈

Software Engineer

2015 - 2018
建筑商的电子商务
  • 在首席开发人员离开后,接管了Vaadin web应用程序的开发. 立即做了一些改变,以减少每月100倍的托管成本, 提高性能, fix critical bugs, 将部署时间从30分钟减少到1分钟.
  • 与产品经理密切合作,使用敏捷方法实现和试用新功能.
  • 设计并创建了一个用于抓取大型GIS数据集的系统, 翻译并插入PostGIS数据库, 然后将适当的数据集与最终用户匹配,并将其查询限制为本地化数据集.
  • 管理多个生产Linux服务器托管支持服务的主要web应用程序:Alfresco(文档控制), Flowable (BPMN), Mapfish Print (PDF地图).
  • 管理和指导其他团队成员.
  • 为快速客户登录创建了一个白标主题引擎, 允许新企业快速定制产品品牌.
技术:Print, MapFish, JPA, PostGIS, PostgreSQL, vadin, Java

Software Engineer

2015 - 2016
技术环境
  • 创建了一个灰尘监测数据库与实验室数据输入和集成的实验室规模.
  • 建立一个报告附加组件,使用Microsoft Excel和Word自动生成详细的月度报告,通常需要几天才能完成.
  • 创建了一个配套的现场记录器,用于从粉尘监测设备下载数据并同步回主数据库.
  • 构建数据导出以将数据转换和导出为适当的客户机数据库所需的格式.
技术:Microsoft SQL Server, Desktop, .NET

Software Engineer

2014 - 2015
Aurum Catering
  • 为从需求和设计到交付和支持的整个生命周期开发软件.
  • 构建了一个触摸屏友好的web应用程序设计,用于移动环境.
  • 集成现有的客户端基础设施和系统.
技术:SQL Server报表服务(SSRS), IIS, Microsoft SQL Server, 模型-视图-控制器(MVC), ASP.NET MVC, .NET

Software Engineer

2012 - 2015
Stonevale Group
  • 参与从需求收集到架构的整个生命周期软件开发, 交付和维护.
  • 使用敏捷方法与客户合作,以获得快速反馈.
  • 设计并实施零停机持续交付管道.
  • 在远程环境中管理和领导一个开发团队.
  • 集成客户的现有系统,并进行分阶段迁移,以尽量减少客户中断.
技术:JasperReports, JOOQ, H2 Database, Vaadin, Java

Software Engineer

2009 - 2014
鲍尔弗·比蒂|伍利·帕森斯
  • 使用Java构建了一个钻孔维护风险数据库作为web应用程序, Apache Tapestry, H2数据库和Open Office生成报告.
  • 创建了一个水监测实验室系统,作为井眼维护数据库的扩展,其中包括实验室和现场数据输入, 从外部实验室导入数据, report generation, 数据导出到适当的客户端系统, 一个计算引擎和数据验证引擎.
  • 开发了一个配套的现场记录仪系统,运行在坚固耐用的Windows XP平板电脑上. 该软件作为一个具有离线功能的嵌入式web应用程序运行. 它包括数据输入和基于验证的场外历史记录, 用于样本点定位的GPS和地图(离线), 集成数据备份到SD卡, 通过COM端口与数据记录仪接口进行结果和校准, 计划和进度跟踪.
技术:GIS, ActiveX, Microsoft SQL Server, Java, Windows Forms (WinForms), .NET

Software Engineer

2012 - 2012
Rio Tinto
  • 创建了一个数据处理系统,将需要花费大量时间手动完成的复杂数据转换和处理自动化.
技术:Microsoft Excel, Visual Basic for Applications (VBA), Microsoft Access

I.T. Manager & Support

2009 - 2011
基础基督教学院
  • 设计网络并排除故障.
  • 执行服务器管理.
  • 提供终端用户支持.
  • 处理系统映像和部署.
  • 监控性能.
技术:邮件服务器,Linux服务器,Windows服务器

Software Engineer

2008 - 2011
Great Living Homes
  • 创建了一些复杂的FileMaker功能来自动化许多业务流程, 并根据触发器发送通知. 它的设计方式是非技术用户可以创建新的通知和自定义触发器和操作.
  • 将Java与FileMaker集成,创建更高级的UI,可以在FileMaker中可视化, 跟踪和更新工作流程.
  • 创建了一个Microsoft Access“工具箱”应用程序,以补充运行在Access数据库后端的OTS软件包提供的功能.
  • 整合多个产品和云服务,创建一个同步和通知机制,将办公文件同步到员工的iPad上,并在文件需要更新时发出通知. (这是为了取代纸质系统或手动电子邮件文件,这很麻烦).
  • 管理Windows和Linux服务器, 微软活动目录和虚拟服务器, office networking, and mail servers.
技术:Microsoft Access, PHP, Apache, Windows Server, Java, FileMaker

Software Engineer

2005 - 2008
人布伦克霍夫
  • 使用Microsoft Access创建井眼维护数据库,用于评估与井眼可达性和功能相关的环境合同风险.
  • 为工程项目制定详细的财务报告,以帮助他们使用Microsoft Access更有效地满足预算.
  • 自动导入便携式水样的实验室结果,以提供更快的反馈和周转时间. Using Microsoft .NET C#.
  • 将一个复杂的Access数据库迁移到Microsoft SQL Server,以获得显著的性能提升和稳定性改进.
  • 构建了一些Excel自动报表生成工具,以减少使用VBA进行饮用水样本报表的错误和时间.
  • 创建了一种关键任务的粉尘监测实验室软件,以简化数据采集, entering of data, 利用c# WinForms和COM互操作实现了粉尘样品采集管理.
  • 开发了一种适用于Windows Mobile加固型pda使用的现场粉尘记录仪软件 .NET SDK for Windows Mobile; included a COM port download of data from dust extractors.
  • 已创建并支持, as a team lead, 一个企业水监测数据仓库和一种基于ASP的报表软件.NET; also provided production support.
  • 开发了一种用于导入的配套ETL软件, transforming, 并使用c# WinForms将数据上传至水质监测系统.
  • 推出了一种用于水监测和管理时间表的OTS软件,包括用于水采样点的坚固耐用的pda和条形码扫描仪.
  • 使用c# WinForms为水监测软件创建了几个软件附加组件,以填补软件中缺失的漏洞,使其更可用. 附加组件包括日程安排的可视化/日历视图,因此可以更好地进行计划, 还有更好的软件来与现场记录器同步时间表.
技术:Windows Mobile, Windows Forms (WinForms), c#, ASP.. NET, Microsoft SQL Server, Microsoft Access

Software Engineer

2004 - 2004
CSIRO
  • 开发了一个全栈web应用程序,作为定性风险评估技术概念的证明. 当时,这是使用尖端的JavaScript和CSS在web上提供出色的用户体验.
  • 写了一篇73页的关于基于证据和论证的风险评估的论文.
  • 开发从开始到完成的完整生命周期.
  • 安装和管理Linux服务器.
技术:MySQL, JavaScript, CSS, HTML, Tapestry, Java

发展(系统自动化及保安)

2003 - 2003
Murdoch University
  • 发现了他们学生评分系统的安全漏洞.
  • 创建用于自动设置新单元的部署脚本, 取代以前每学期进行的手动复制/粘贴类型设置.
  • 加强共享服务器的安全性,防止学生访问web应用程序后面的数据库.
技术:CGI, Apache, Linux服务器

自由网页开发员

1999 - 2003
Freelance Work
  • 高中和大学都有工作经历.
  • 在Apache和IIS上使用Perl CGI为ISP创建了一个在线调查软件.
  • 为一些本地企业在Apache上建立网站,使用SHTML(包括服务器端).
  • 在Apache上使用Perl CGI构建了一个在线澳大利亚游戏排行榜和一个基于文本的在线多人游戏.
技术:Apache, Linux服务器,CSS, HTML

本地优势

http://localadvantage.com.au/
在现有的开发人员离开后,我接手了项目的开发,项目已经超出了时间和预算.

我与客户密切合作,并就如何最好地从这里着手提出建议. In an ideal world, 它将涉及重新开始使用更合适的技术堆栈, 但理想的情况很少发生, 因此,我着手修复一些长期存在的错误,并简化部署过程,以减少部署中的回归,从而可以快速可靠地交付更新.

我与客户合作创建一些新功能,并改进现有功能和用户体验(UX)。.

客户有限的预算意味着需要对开发工作进行优先排序, 因此,决定哪些问题需要解决,哪些问题最好放弃是非常重要的.

另一个挑战是解决深深嵌入到生产系统中的问题, 在不打扰客户的同时. 对于这个项目, 它是全天候使用的, 这意味着以向后兼容的方式进行所有更改.

技术:Ionic 1, AngularJS, PHP Laravel, Full-stack

建筑商的电子商务

http://www.buildersecommerce.com.au/
Successes:
•降低生产成本100倍
•从根本上提高可靠性
•在保持产品稳定性的同时,以敏捷方法快速构建原型并测试新功能
•设计一个架构系统,以一种创新的方式可扩展处理大型GIS数据集
•创造性地提出创新的解决方案,以满足具有挑战性的要求

作为前端开发人员,我最初咨询了Builders' ecommerce,以使用CSS为应用程序主题.

不久之后,首席开发人员离开了,我接手了这个角色.

我立即对系统进行了几个关键的更改,以降低产品服务器的成本,因为它已经失去了控制. 这涉及到对构建过程的更改, 修复一些关键bug, 以及自动化部署管道. 我将月费降低了100倍,提高了应用程序的性能和可靠性.

我在建筑商的电子商务项目上继续工作了几年, 用敏捷方法实现和测试新特性, 在产品经理的领导下作为团队的一员工作, 并保持产品的性能和稳定性.

技术:CSS, JavaScript, Vaadin, JPA, Java, PostgreSQL, Flowable, Alfresco

Aurum居民膳食管理系统

Aurum餐饮RDMS是一个旨在简化记录居民饮食需求和偏好的系统, 订购原料, 在厨房准备饭菜, 然后把正确的食物送到居民手中.

这个项目有一个完整的需求规范,所以我的角色是评估、开发和交付.

该项目将在一个 .. NET MVC栈与Microsoft SQL Server和SQL Server报表服务.

我组建了一个小团队来交付这个项目, 我作为一个技术领导管理和执行的角色.

我还建议在地面上使用平板电脑, 有在平板电脑上使用网页应用程序的经验和固有的问题.

这是一个相当标准的项目,没有大的惊喜、创新或需求变化.

在时间和预算范围内交付了健壮可靠的解决方案,并使客户满意. 不幸的是,不久之后,该公司被另一家公司收购并关闭了.

环境粉尘监测系统(Dusty)

客户赢得了一家大型矿业公司的合同,为他们处理粉尘监测.

他们只有两周的时间通知他们的系统到位. 之前的承包商在转让他们的IP时不太配合, 所以开发软件的机会非常有限. Furthermore, 人们认为必须有适当的软件来简化数据收集和分析,并确保尽量减少错误.

我开发了一个MVP桌面应用程序使用 .在两周的时间框架内,在SQL Server数据库的基础上开发。NET MVC,并在第一天与客户一起现场解决任何立即出现的问题. 我的角色对平稳过渡至关重要.

在接下来的几个月里,继续进行进一步的开发,以添加新功能,并添加一个在平板电脑上运行的配套字段记录器应用程序, 加上自动报告. 从那以后,该系统一直在全天候运行多年.

CAMBS |建筑施工与管理系统

一个住宅建筑商找到我,让我替换他们已经变成“怪物”的现有系统."

他们拥有的系统无法扩展, 有很多bug和怪癖, 还有很多技术债务, 所以任何进一步的发展都会产生更多的问题. 他们觉得自己缺乏专业知识,这次想“把事情做好”.

For this project, 在评估了几个框架之后, I selected Vaadin, 哪个web框架的开发模型更像桌面应用程序.

我组建了一个小团队, 创建了一个高级需求文档, 然后使用敏捷方法与客户合作,尽可能早地向客户交付有价值的特性.

项目范围的一部分是从现有系统到新系统的迁移. 所以这个系统的发展方式允许平稳的转换, 迁移发生在每个特性的基础上, 作业同时在两个系统中运行.

由此产生的系统涵盖了从销售到工作流到合同到报告的广泛业务需求.

EWMS |企业水资源管理系统

该项目围绕一个面向样本收集的环境数据管理系统展开, processing, analyzing, and reporting. 本系统是按照实验室信息管理系统(LIMS)的标准开发的,并不适用. 他们专注于分析样本而不是收集样本, tracking, 以及样本报告.

该系统发展到包括在具有离线地图和GPS功能的坚固触摸屏平板电脑上运行的配套现场记录器, 现场数据验证, 并通过COM口和USB接口与仪器集成.

该系统需要远程和现场访问, 因此,它被实现为一个web应用程序,使用Apache Tapestry运行在高速嵌入式H2数据库上. 字段记录器是同一系统的扩展,作为嵌入式web应用程序运行,具有数据库的完整副本(允许离线支持),并使用基于事务的同步机制来推送数据, 以及用于提取数据的快照.

嵌入式web应用程序模式后来使用电子等工具成为主流, 但这是在Firefox的早期版本中使用XULRunner实现的.

该项目已连续多年在生产中可靠运行.

Languages

HTML5, CSS, JavaScript, TypeScript, HTML, Java, SCSS, Bash Script, PHP, C#, Visual Basic for Applications (VBA), Perl, GraphQL, Solidity

Frameworks

Angular、Apache Tapestry、Vaadin、Ionic、Material UI、Bootstrap、JUnit、Tapestry、 .. NET, ActiveX, Express.js, ASP.NET, ASP.. NET MVC, JPA, Hibernate, Jasmine, Protractor, AngularJS

Paradigms

Dependency Injection, Agile, 持续集成(CI), 持续部署, 测试驱动开发(TDD), 模型-视图-控制器(MVC), Spiral Development, BPMN

Platforms

Linux, Eclipse, Visual Studio Code (VS Code), 软件设计模式, WordPress, AWS Lambda, Windows, MacOS, Windows Mobile, Windows Server, Desktop, Docker, Blockchain

Storage

H2 Database, PostgreSQL, PostGIS, MySQL, SQLite, Microsoft SQL Server, SQL Server报表服务(SSRS), Amazon DynamoDB

Other

Software Development, 软件架构, PSD to HTML, Full-stack, 软件开发生命周期(SDLC), Holochain, MapFish Print, Command Prompt (CMD), 渐进式Web应用程序(PWA), Linux Administration, Windows系统管理, Hybrid Apps, Distributed Software, SVG, Linux Servers, CGI, Web Components, MapFish, Print, Mail Servers, COM Interop, IIS, Amazon API Gateway, Mobile Apps, Distributed Ledgers

Libraries/APIs

jQuery、ReactiveX、AWS Amplify、Windows Forms (WinForms)、REST api、Node.js, JOOQ, JasperReports

Tools

Microsoft Access, Microsoft Excel, FileMaker Pro, Apache, NGINX, Microsoft Word, Web GIS, Apache Tomcat, AWS AppSync, Git, GitHub, Open Office, Angular CLI, FileMaker, GIS, C#.. NET WinForms, Visual Studio, Amazon Cognito, Jenkins

2001 - 2004

软件工程学士学位

默多克大学-罗金厄姆,西澳大利亚

有效的合作

如何使用Toptal

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

1

Share your needs

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

Choose your talent

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

开始你的无风险人才试验

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

对顶尖人才的需求很大.

Start hiring