大家好,我叫Anton Tupikov,我是Gett B2B Development的团队负责人。
盖特不仅是出租车服务,而且是一个充满活力的市场。 这是一个高负载的系统:全球120个城市的成千上万的驾驶员和数百万的客户每天都在使用Gett服务。
Gett最初是作为B2C应用程序开发的,在过去6年中已经推出了多个“初创公司内部的初创企业”。 这些是交付,小巴和公司销售的实验。 他们中的许多人后来变成了成功的业务部门。 例如,B2B解决方案成功地为超过15,000个大公司运作,包括Google,Visa,Gucci,LVMH,Nestle等品牌。
盖特面临的下一个重大挑战是明年上市。 我们希望新一代产品能够帮助我们的IPO取得成功,这就是为什么决定结合最佳的Gett和Juno工程师的努力来实现这一目标的原因。 它是关于使用最先进的技术栈从头开发创新的产品解决方案。
我想邀请所有人参加9月12日在明斯克举行的会议,在GoWay社区的支持下,我的开发人员将在此讨论他们每天所面临的技术挑战,以及我们在开发新解决方案时未来所面临的挑战。

在会议上,演讲者将讨论使用Go语言解决Gett中的哪些技术难题。
主讲人:
- B2B开发团队高级后端工程师Getty的Sasha Grunin - Go-Gett中的开发历史2018-2019。
盖特(Gett)是一个经典的故事,当经过几年的整体开发之后,事实证明,将整体分为服务而不是重构具有更大的优势。 向Go过渡不是一个瞬时过程:随着技术的发展,周围的过程也在发展。
Sasha将在此报告中讨论公司如何在Go上开发开发以及现在如何安排开发流程和技术。
- Sagi Kritchbets ,Gett,定价团队高级后端工程师- 最新技术(英语)
在Gett,很多功能都是基于位置的。 在每个订单期间,都需要根据GPS位置检索配置数据。 地理服务正在处理大量请求,并且处于业务流程的关键路径上。 要求该服务能够快速响应并具有可伸缩性。 Gett的传统区域服务完全基于PostGIS,这导致了DB的瓶颈。 Sagi将讨论基于十六进制网格和redis pubsub的新区域服务及其在内存中分布式地理缓存的实现。 Sagi将介绍解决方案中使用的基本几何算法以及我们必须克服的挑战。
- Ron Ludmer ,Gett,Matching&Ride Exchange团队的高级后端开发人员- 基于Redis的信号灯(英语)
随着微服务架构风格的普及,使用分布式系统所带来的风险越来越受到关注。 一个常见的问题是同时从多个实例访问我们的共享资源,从而导致数据不一致。 以最小的效率来确保正确性的最佳方法是什么? 可以说,最简单的方法是使用锁定机制。 Ron将讨论分布式锁定的不同方法,以及他们在Gett解决此问题的方式,从而得出我们当前的解决方案:在Golang中实现的基于Redis的分布式锁定。
除了出色的演讲者提供的有用报告外,您还将发现大量的人脉,当然还有派对之后! 要参加,需要
注册 。
关于现在为什么我们决定与Juno携手合作的一些信息。
考虑到Gett B2B部门从一开始就在经营中是盈利的(并受制于整体盈利能力),这促使Gett围绕企业客户及其需求重新确立其价值主张。
2017年4月,
Gett收购了Juno公司 ,这是一家在纽约运营并在明斯克设有开发中心的初创公司。 Juno是于2015年成立的拼车服务。 从一开始,Juno就大声疾呼自己:这项服务于2016年5月在纽约启动,而在2016年9月,每月的出行次数已超过50万次。 2017年9月,成功旅行次数超过100万。 如今,Juno已成为纽约在线出租车运输市场的领导者之一。
现在,Gett在B2B解决方案的技术更新方面具有优先权,出于这些目的,已决定将Minsk的Juno办公室以及莫斯科和以色列的Gett RnD团队共同努力。
B2B平台解决了与行程相关的所有公司问题:从订购汽车和监控汽车,到财务部门控制费用并生成报告。
Juno团队与Gett一起将在服务的多个领域工作:员工关系通常,在公司中,员工无法独立使用出租车和送货服务:有时,旅行申请是通过单独的员工/服务部门发布的。 每个公司都有自己的旅行政策,Gett B2B的任务是尽可能地适应每个客户的具体情况:自定义您的个人帐户,并考虑所有规则和政策。
成本控制Gett B2B为客户解决的最切实的问题之一是公司运输成本的透明度。 透明度不仅关系到每次旅行的账目细节,而且关系到公司在每个城市或国家承担的所有费用在一个地方汇总的可能性。 将来,这些报告将用于例如增值税退税。
Gett B2B通过自动执行管理员和财务服务的手动工作来解决这些问题。 他们不再需要收集支票,查找行程详细信息,向不同部门提出成本请求,手动输入每位员工的信息并多次检查。 客户可以同步SFTP数据或创建API旅行。
此外,Juno和Gett还将在计费,消费者服务和供应商连接领域合作。
B2B解决方案技术的选择旨在有效解决现代数字产品面临的问题:
- AWS和Kubernetes有助于适应乘车市场典型的浮动负载并有效扩展
- 通过持续交付与詹金斯相关的流程,可以获得每天用新功能取悦客户的能力
- 在最高系统负载时,高效灵活地使用资源, Go和Redis可以跟上时代的发展
- 快速响应并实施产品变更,提供出色的用户体验,这可能要归功于React / Redux和Ruby
- 借助CloudAMQP ,在保持数据一致性的同时成为微服务架构的一部分
- 监视产品的性能并确保高质量,并且可以借助生态系统来监视和搜索异常,包括PagerDuty,Airbrake,New Relic,Datadog和带有内置单元,组件的持续集成过程,以及针对Java / testNG / Selenium的集成测试
如果您有任何疑问,我很乐意在这篇文章的评论中回答。 在会议上见!