WirelessCar 创新型智能网联服务背后的技术、工具和团队合作

2024-07-17

在 WirelessCar 担任开发人员是一种什么样的体验?我们如何在瞬息万变的数字环境中保持领先地位?本文将讨论一些WirelessCar的技术、工具和团队合作,它们塑造了我们在 WirelessCar 的工作。这既包括我们为客户开发和运营的创新性智能网联服务,也包括鼓励创造力、好奇心和社群参与的工作氛围。

在WirelessCar工作的风格是“责任和自由”

我刚从大学毕业,就参加了 WirelessCar 的一个名为 "新星"(Rising Stars)的培养项目。那时公司给我留下的最早印象之一,就是我们的工作非常自由。

就拿选择操作系统来说,这看似是个微不足道的决定,但实际上至关重要。在WirelessCar,我可以自由地选择自己最熟悉的操作系统,这让我的工作更加轻松愉快。同时也说明WirelessCar愿意为员工提供符合他们偏好的设备支持,尽可能地帮助他们提高工作效率。

更重要的是,WirelessCar 的自由贯穿整个工作流程。公司对新的解决方案持真正开放的态度,积极鼓励创造力和好奇心。比如,如果有人想在 AWS 中测试一种新的或经过修改的设计模式/服务,或者想做一个概念验证,那么这种想法通常都会受到鼓励和欢迎。

这在很大程度上也适用于我们的编程语言、框架和库。虽然我们主要使用 Java,但也有许多功能是用 Python 或其他语言编写的,当某种编程语言更合适或者所需代码更少时,我们会选择使用它。我们的团队具有强烈的学习意愿,愿意尝试新方法来开发产品解决方案

a smiling woman in front of a computer screen

WirelessCar 的工作方式如何优化客户的业务?

一种思路的产生,无论是否实现,往往会促进更多新思路的涌现。在开发智能网联服务(包括新服务和现有服务)时,我们都尽全力进行思考和讨论。无论是在团队内部,还是在团队之间,我们都会讨论利弊,并进行严格的测试。

我们热衷于尝试新事物,并从不同角度看待它们,这意味着我们可以更好、更快地开发数字服务。这样,我们就能引领技术发展,获得竞争优势。由此,我们的客户也会受益匪浅。

汽车行业瞬息万变,尤其是从数字化的角度来看,竞争比以往任何时候都更加激烈。我们需要保持创造力和好奇心,无论是作为公司还是整个行业,这样,OEM才能利用这种创造力和好奇心在市场中占据优势。

WirelessCar的行业技术和工具

为了开发、维护和改进我们的智能网联服务,我们使用了哪些技术和工具?下面简要介绍这些工作的数字基石。

● 通过使用和测试云供应商的功能和服务,我们可以获得新的知识并不断改进,这让我们的服务可以顺利、安全地构建、测试和调整。某些微服务和模式可以在不同团队之间共享,这意味着我们不用每次都从0开始构建。我们主要使用AWS的网络服务,但在某些情况下也使用Microsoft Azure

● 以 AWS 为例,我们经常使用 AWS Lambda 运行代码,使用 SQS 和 SNS 向服务的不同部分传递消息,并将 DynamoDB 作为首选的数据存储方式之一。

● Java 是我们最常用的编程语言,但我们也使用其他语言(包括 Python、Golang 和 JavaScript),这取决于我们正在开发的服务或应用程序。

● 许多WirelessCar的DevOps团队使用Cucumber作为他们定期运行的集成测试工具。我们在虚拟化单元中运行一些服务,对于这些服务,我们可能会使用Docker和Spring Boot框架。至于库,Project Lombok 是一个很受欢迎的选择,因为它能将重复的模板代码保持在最低水平。这种原则也适用于框架和类库:如果某个(框架/类库)比另一个更好用,而且我们还想了解它的更多特性,那么就会更倾向于选择它。

● 我们使用基础设施即代码(IaC)来最大限度地减少点击运维,并通过CI/CD管道来促进我们的工作。这有助于我们以更高效的方式开发新的和现有的智能网联服务。
始终走在技术前沿是我们公司的核心所在,自 25 年前成立以来,我们一直如此。

● WirelessCar 的智能网联服务是基于云的无服务器服务。这意味着这些服务可以更容易地开发和部署,并能快速扩展,以满足客户的要求。

a man in front of two screens, coding

我们的 DevOps 团队会确保数字服务的质量--从概念提出到落地运行

在 WirelessCar,开发这些服务的团队同时也在运营着它们。这些自我管理的 DevOps 团队负责构建、测试、部署和运营我们智能网联服务。最重要的是,他们还在这些服务的整个生命周期中为我们的OEM客户提供支持。

在开发新的智能网联服务时,我们的每个 DevOps 团队都会负责项目的整个生命周期--从基本架构到服务的持续可操作性。这意味着, WirelessCar 的开发人员将从头开始构建和拥有无服务器结构。通过这种方式,他们将对自己的服务了如指掌,这对所有相关人员都有好处:客户、我们的业务合作伙伴和同事。开发人员们将能够快速进行改进、添加新功能、回答问题并在需要时提供高效支持。

这一切的核心是我们所有 DevOps 团队的共同努力。我们总需要讨论和学习新发现:以某种方式做事的利弊是什么?我们从某个工作流程中学到了什么?我们能否让服务更直观和/或更易于维护?我们对所开发的智能网联服务有着共同的主人翁意识,并渴望不断改进和创新。

就我个人而言,这种工作方式让我对自己的工作充满自豪感。每当我看到自己参与设计的汽车模型时,我会想 "这个模型的后台编码也有我的的一份力",这让我很有成就感。

如果您对在 WirelessCar 担任开发人员或软件工程师有任何疑问,可以通过下面的地址联系我。有关我们的解决方案DevOps 团队公司历史的更多信息,请查看 WirelessCar Insights 博客上的其他文章。在这里,我们几乎涵盖了我们工作的方方面面: 人工智能和可持续交通机器学习网络安全威胁情报数字钥匙解决方案呼叫中心服务PI 规划等

Isabella Fransson
Software Engineer