Chatwork Creator's Note

ビジネスチャット「チャットワーク」のエンジニアとデザイナーのブログです。

ビジネスチャット「Chatwork」のエンジニアとデザイナーのブログです。

読者になる

リモートワークしながら自転車で1500km旅してきた

おひさしぶりです。サーバーサイド開発部PHPチームやまざきです。 クリーンなアーキテクチャはクリーンなペダリングができて初めてスタートラインにたてると思っています。

今回は、伊達と酔狂だけで自転車部をやっているやまざきがリモートワークしながら

  1. 太平洋から日本海までの本州縦貫 1215km
  2. 太平洋から瀬戸内海までの四国縦貫 364km

計1500km超のサイクリングをしてきた、誰にも得にならないようなことを共有しようと思います。 まあ、伊達と酔狂でやってますから仕方ないです。

続きを読む

Chatwork @ iOSDC 2019!

f:id:cw-adam:20190920144045j:plain
iOSDC 2019

Intro

ChatworkのiOS Engineer、安宅(あ)とアダム(ア)です! 今年のiOSDC 2019は最高に楽しかったので記事を共有させていただきます! 是非皆さん来年iOSDCで会いましょう〜

Q: What is iOSDC? iOSDC JapanはiOS関連技術をコアのテーマとした技術者のためのカンファレンスです。

Q:自己紹介お願いします!
あ:安宅(あたか)です。クライアントアプリケーション開発部でiOS Engineerをしています。Chatwork歴5年です。最近、自分のブログが書けていません。すみません。頑張ります。本日は、よろしくお願いします!
ア:クライアントアプリケーション部のiOS EngineerのAdam(@monolithic_adam)です!iOS歴5年でChatwork入って一年ピッタリぐらいです!最近iOS DevOpsにはまっています!(Bitrise, Fastlane, XcodeGen, scripting, など)。よろしくお願いします!

前夜祭

Q: 何が面白かった?
あ:前夜祭は 17:50 からトークが始まりました。軽食とドリンクが用意されていたので、お腹に物を詰めてからトークを聞くことができました。空腹だとトークに集中できないですからね。助かりました。
ア:ビール飲みながらトーク聞けるなんて最高でした。ダークモードグッズや看板があって、テーマはバッチリでした。

Q: ベストトークはどんな内容でしたか?
あ:SwiftのStringの文字数の数え方を完全理解する by Takanori Hirobe | トーク | iOSDC Japan 2019 #iosdc - fortee.jp]ですね。Swiftの文字列はC言語やRubyのようなシンプルなCharaterの配列ではないので、少し複雑なことをしようと思うと直感的な操作ができずに困ることが多いです。このトークではSwiftのString型の基本的な掴え方を丁寧に説明されていて勉強になりました。
ア: スクリーン配信機能の実装が大変だったので知見をお伝えします by FromAtom | トーク | iOSDC Japan 2019 #iosdc - fortee.jpはとても面白かったです。今度配信できるアプリを作ってみたいです。発表者の内容に書いてあるけどiOS 11で機能的に完成しているためminimum targetにセットするのが良いみたいです!

Q: 面白かったブース?
あ: 前夜祭はブースを回る時間をあまり取れませんでした。
ア: 前夜祭だからかもしれないけどあまりブース行けてなかったけど、Room Clipさんのデザインシステムについての冊子が面白かった(残念ながら持って帰れなかったです😅)。

Q: 前夜祭参加してよかったポイントはなに?
あ:前夜祭に来たタイミングでレジストレーションをすることになります。翌日、トーク開始ギリギリにやってきても大丈夫になるので精神的な余裕が生まれます。前夜祭のトークは少ないですが、来る価値ありますね。
ア:一トークでも多く聞けてよかったし、スクリーン配信の機能を今すぐでもアプリに導入したくなってしまいました。

f:id:monolithic-adam:20191105151824j:plain
前夜祭〜

オープニングパーティー

Q: どんな感じでした?
ア:相変わらずファンキーなオープニングパーティーでした。音楽大きくても飲み場でいい仲間作れて行ってよかったと思います。

Q: 参加してよかったポイントはなに?
ア:沢山の新しいエンジニア・学生さんたちと一緒に話ができたし、ご飯・お酒美味しかったです。一回技術から離れて、新しい人と出会うチャンスなので参加した方がいいと思います!

Day 1

Q: ベストトークはどんな内容でしたか?
あ: 縦書きエディタを6プラットフォームで開発してみて by 六々 | トーク | iOSDC Japan 2019 #iosdc - fortee.jpが個人的には一番面白かったです。私は組版の考え方を TeX で噛じりました。自分の持っている知識とiOSアプリでの実装との、ちょうど橋渡し的な位置のトークだったのでありがたかったです。

前日に聞いた[SwiftのStringの文字数の数え方を完全理解する by Takanori Hirobe | トーク | iOSDC Japan 2019 #iosdc - fortee.jp]とも内容が一部リンクしていて、合わせて聞くとiOSの組版について理解を深めるのに役に立ちました。
ア: 当たり前すぎて迷っていたけど、Kishikawaさんの「ライブラリのインポートとリンクの仕組み完全解説 」は私的にベストインショーでした。(Day 01だけじゃなくて)。最近Linker周り戦ったり、XcodeGen導入したりしたのでテーマ的に超響いた気がするけど、分かりやすかったしめちゃくちゃ深いトピックで短い一時間でいい感じになったのでこのトークしかないと思いました。

Best Mentionは@kariad_uuさんの「Xcodeのコードカバレッジ計測ではなぜブランチカバレッジが取れないのだろうか? 」でした。ずっとXcodeの内部のコードカバレッジどうなっているのか気になっていて、まさか話がLLVMまで行くと思わなかった。ナイストークでした!

f:id:monolithic-adam:20191106123918j:plain
ご飯が美味しかった!

Q: 面白かったブース?
あ: JapanTaxi のブースが面白かったです。普段私達が見ているのはiOSアプリの方だけですが、実際はタクシーに付けている専用機器の開発も行なっている、という話を伺いました。ソフトだけじゃなく、ハードにも手を出しているってAppleみたいですよね。
ア: Diverseさんと面白い話できたので選びました。「Social Mediaどの広告が刺さったと思う?」のクイズで完全に答えを間違ってしまった😅。クイズの内容が人の性格とか技術からちょっと離れた話だったけど、楽しかったです。Flutterでアプリ作っているらしく、なぜハイブリッドを選んだとかは丁寧に答えてくれました。ありがとう〜

茶会

f:id:cw-adam:20191007152240j:plain
茶会エントリー!

Q: 茶会ってなに?
あ: 懇親会ってお酒が出るイメージがあるじゃないですか。その前提を崩して、お酒を飲まない形の懇親会を行なおうという新しい試みです。
ア: 酒好き向きなイベントが多い中、酒嫌い・飲まない人向けのイベント(お酒がありましたけどw)でした。

Q: 一緒に話した人・グループ
あ: 新聞系のアプリへ作っている方とか、学生さんとかです。
ア: 幅広いメンバーと話せて面白かったです。ニュース系のアプリの方、Bluetoothおもちゃメーンで開発している方、趣味でiOS開発している、学生さん。なかなか面白い集まりでした。おかげでいい思い出を作れて参加してよかったと思います。

Q: 参加してよかったポイントはなに?
あ: 私はお酒が飲めない口なので、こういうノンアルコール前提の会は居心地が良かったです。
ア: 飲み場でなかなか話せない人と話できて参加してよかったと思います!

Day 2

Q: ベストトークはどんな内容でしたか?
あ: Day 2 のマイベストトークはHeart of Swift by Yuta Koshizawa | トーク | iOSDC Japan 2019 #iosdc - fortee.jpです。Valua SemanticsとProtocol-Oriented Programmingについて、最新のSwiftをベースに説明されていました。Value SemanticsとReference Semanticsの違いは値型と参照型の違いと同じではない、といった話題が耳に新しかったです。Struct内のプロパティーを変更する時は、新しくStructを作るものだと思っていたので、開発の根底思想をゆさぶられた思いでした。自分の思い込みを崩してくれるのも、こういうカンファレンスの醍醐味ですね。
ア: どんな会社でも「デザイン確認・UI Testが大変!」と課題になっていますよね。@imaizuneさんの「スナップショットテスト実戦投入」のトークを聞いて初めて改善できそうと思いました!セットアップコストは結構大変そうだけど、やってしまえばQAが楽になりそうですし、テスト端末をちょっと減らせるかも(減らさない)。端末サイズの種類がどんどん増えている中で、いつかやらないとQAだけで仕事終がおわってしまう〜と思ったりしています。Snapshot Testing使いましょう〜

Best Mentionは@akatsukiさんの「すべての人のためのアクセシビリティ対応」でした。Accessibiltyをどこまで対応すべきか、いつやるのか(今でしょ!)っていうのは非常に良くて、キャッチコピーとしてすごくいいタグラインがありました。「アクセシビリティーは障害を持つ人だはなく全ての人のため!」。これからもっとアクセシビリティーを強化しないとな〜と思いました。

Q: 面白かったブース?
あ: チームラボのスマホ神経衰弱が目を引きました。カードが 18 枚並べられていて 3 回試してカードが揃えば勝ちです。1 つのスマホに 1 枚のカードが割り当てられている、ってところが面白くて、18 台のスマホをどうやってコントロールしているんだろう、なんてことを考えながらゲームに興じました。実装についての話を伺うことができましたが、チームラボさん自身の記事に裏舞台が詳しくありますので興味があればそちらをどうぞ!
ア: ブースじゃなかったけど、カンファレンス中によくBitriseさんと話ができて素晴らしかったです。後、弊社のモバイルチームの困っていること・意見を聞いてくれたのは神対応でした。素敵なノベルティーもゲットできました!

f:id:cw-adam:20191007155214j:plain
Swag!

iOS エンジニアの皆さん!

Chatworkはモバイルアプリエンジニアを募集しています!

corp.chatwork.com

See you next year!

f:id:cw-adam:20191007163259j:plain

「デザイナーとして大切にしている価値観」の相互理解

f:id:cw-take:20191018114900p:plain こんにちは。プロダクトデザイン部マネージャーの @cw-take です。

プロダクトデザイン部では3ヶ月ごとに合宿をおこなっており、9月の合宿ではwevox values cardを使ったチームビルディングや、デザイン思想を実現するための取り組みについて話し合いました。

合宿ではwevox values cardを使ったワークが楽しく、個人の 価値観を引き出す のに効果的だったので、この記事ではワークの様子や出揃った価値観を紹介したいと思います!

続きを読む

variantdev/modとmergify.ioで始める依存パッケージの自動管理

こんにちは!SREのid:cw-ozakiです。

SREでは運用にあたって、できる限り利用しているコマンドをDockerizeするようにしています。 そうすることによって、メンバーのマシンやCIのように各環境に依存せずにコマンドを実行できるからです。

この活動を始めてからコマンドが動かないという問題がなくなり、かなり快適になりました。 が、一つだけ大きな問題が発生しました。

f:id:cw-ozaki:20190927112302p:plain
Helmfileの更新通知

_人人人人人人人人人人人人_

> helmfileの更新早すぎ <

 ̄YYYYYYYYYYYY^ ̄

更新が早いことは良いことなのですが、さすがに日に3回も更新が入るとDockerfileを更新するのも一苦労です。 それに、ただバージョン番号を書き換えてPRを作成するという作業はあまりにもインテリジェンスが足りていません。

そこでvariantdev/modとmergify.ioを使ってDockerfileの更新を自動化してインテリジェンスな作業の集中できるようにします。

続きを読む

Chatwork初のサマーインターンシップ『'19in大阪』、未来のScalaエンジニア(?)7名に突撃インタビュー!

Scalaサマーインターンシップ2019 参加メンバー

こんにちは。デザイナーの仁科(@tomokoishida19)です。

今回の記事は、Chatworkのインタビュー隊長として、サマーインターンシップに参加してくれた学生さんたちに直撃インタビューをお届けします!

大阪オフィスで開催されたサマーインターンシップにお邪魔して、フレッシュな参加メンバーにインターンシップの感想や、Chatwork の印象などを聞いてきました。
どんな思いで参加してくれて、実際にどのように感じたか、少しでもお伝えできたらなと思います^^

続きを読む

As a SRE at Chatwork

Introduction

こんにちは。SRE 部の Vikas です。This seems to be my first blog post on Chatwork Creator's note, although after joining Chatwork for 6 months I have much more share as an experience. As I am new to the platform and to the users, I think the best part would be introducing myself, My name is Vikas Kandwal id:cw-vikas and I am an SRE @chatwork.

This blog post will be helpful for the techies who are interested in joining Chatwork or who are following the SRE's threads.

続きを読む

リモートワーク@鹿児島

(注:開発の話は一切でません。ごめんなさい。)

こんにちは。開発本部の田中といいます。 水風呂の温度は17度くらいが好きです。

普段は東京で生活している私ですが、現在は鹿児島県鹿児島市にいます。 このブログも鹿児島市内で書いています。

続きを読む