FJCT兼职生活 ~任务回顾感人精彩集锦~

这篇文章是富士通云技术2017年圣诞节日历中的第六篇文章。

第五天是@kentac55先生关于“在Windows10 Pro上尝试使用Nested Hyper-V玩耍(包含容器)”的文章。我也想尝试一下…!

自我介紹

我正在做富士通云技术(FJCT)的工程师兼职。我是まっきー @makky_tw。我所属于东京电机大学的实空间计算研究室。
平常我不会在社交媒体上发布兼职内容,更不用说写文章了,所以感觉非常新鲜。这就是Advent Calendar的魔力啊。

以下是我的主要技能。虽然有点重复使用的感觉,请谅解。

my_skills.001.png

工作内容

嗯,我在这个地方工作已经快一年了,因为参与了各种不同的项目,所以我想在这次简介中展示一下我正在做些什么!

创建一个用于获取日本云机器学习服务的用户信息的Web API(适用于内部使用)。

首先,我创建了一个能够提取使用者信息的WebAPI,并且该WebAPI是为了满足在公司内部使用时希望能够获取到使用了ニフクラMachine Learning的情况。我被指派负责编写代码。导师教给了我大致的编码设计方针和良好的WebAPI设计方法,并且每当遇到困难时都可以向他提问,这让我能够快速而顺利地进行编码!
更重要的是,ニフクラMachine Learning的源代码本身就设计得非常整洁和易读,采用了领域驱动设计、DI、仓储模式等分离角色,具有高度的可复用性和可测试性,这让我感到开发非常愉快,也给我提供了很多借鉴。总结起来,我所做的就是以上述内容为基础进行的。

    • 既存のコードの全体像を理解する

 

    • リポジトリパターンで利用者データを取ってくるコードを書く

 

    作ったリポジトリを使うHTTPハンドラを書く

这是非常简单的工作(咻咻)
当然我也写了单元测试。

‘: Zhè shì de (xiū xiū), wǒ yě .)

通过这个开发项目,我亲身体验到了一个大型项目的代码设计应该如何。

一项能够通过WiFi连接信息来查找员工位置的服务。

接下来,我从零开始开发了一个名为Wifi-based-location-estimator的内部系统。当Nifcloud机器学习的任务暂告一段落时,我们讨论了下一步要做的事情,“如果能够实时准确地知道员工所在位置会很有趣吧?”有人提出了这样的建议,于是我决定“嗯,我来试试看……!”就这样蛮轻松地决定了下来。

我的工作楼层上的所有Wifi连接信息都存储在一个名为Wifi控制器的设备中,通过调用API可以得到以下信息。

    • どの端末がどのアクセスポイントに接続しているか

 

    電波強度

等等等等。

为了使员工能够知道任何员工已连接到哪个接入点,我们事先准备了一个数据库表,将员工ID和设备ID(MAC地址)提前关联起来。

wifi_system.png

前端使用React,通过员工ID、姓名或邮箱进行搜索时,会在楼层图上标出连接的接入点位置,以便在视觉上明确其位置。(由于某些原因,无法提供网页截图 m(_ _)m)除了接入点位置,还考虑使用信号强度信息来计算更详细的位置信息,但由于对Wifi控制器的访问限制较严格,因此放弃了该方法。

这个项目的编码是我一个人负责后端和前端的!虽然在困难时有导师教导我,但是借鉴了在Nifcloud机器学习中获得的知识,我能够很流畅地进行编码,所以很好!很有趣。

由于公司内部系统的种种变化,这个系统无法再使用了!真遗憾w(我个人认为,重要的是能完成创作,所以也还好w)

哪一个选项????

尼福云脚本是一项在云端使用JavaScript编写脚本并通过控制面板或API执行的服务。它允许您使用在服务器端运行的脚本,而无需搭建或运维服务器。类似于AWS Lambda。

我被委托负责一些尼福云脚本的重构任务,其中一个任务是将Promise的嵌套层级尽量减少。我认为专业的Jser们应该知道,在Promise.then(){}中继续使用Promise.then()会导致嵌套层级不断加深,这是完全的反模式。

之前

hoge().then((data) => {
  fuga(data).then((result) => {
    doSomething(result);
  });
});

完成一个令人印象深刻的项目整个团队都感到非常自豪。

hoge().then((data) => {
  return fuga(data);
}).then((result) => {
  doSomething(result);
});

鉴于业务逻辑和测试部分中存在着相当多样化的这种代码,因此我对这些部分进行了修正。
这是一项相当繁重的工作,但我成功地成为了Promise重构工程师的道路。

嗯,最近的話題是要用async-await。

总结

我介绍了我过去一年的主要任务。我感觉这一年我有了巨大的成长。这主要得益于我的导师在我遇到困难时给予的指导,同时也归功于我们对编程设计等方面的各种讨论。我感激不尽,非常幸福,令人兴奋得肌肉发胀。有时候下班后和同事们去攀岩也很有趣。

我在这里失陪了。如果能传达出愉快的氛围,我会很高兴的。

第七天是 @YoshidaY 先生的”尝试使用gRPC使用Apache Kafka”。
听起来好厉害!(半嗤笑)

广告
将在 10 秒后关闭
bannerAds