Chatwork Creator's Note

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

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

読者になる

Swift Concurrencyのここがスゴイ

この記事はChatwork AdventCalendar 2021の18日目の記事です。

モバイルアプリケーション開発部の池田(Twitter: m_ike)です。普段はiOS担当でSwiftを書いています。

2021年も残すところあとわずかですが、皆さんの今年の重大ニュースはなんだったでしょうか?自分の場合は、気がつくとChatworkに入社していたことです。

さて、Swiftの一番のニュースとなると、やはりSwift 5.5で並行処理(非同期処理)をサポートするSwift Concurrencyが出たことだと思います。

特にその中でも注目されていたのはasync / awaitですが、この記事では個人的に一番すごい!となった「actorでデータ競合を防ぐ」という点を取り上げます。(ちなみに2番目にすごいと思ったのは構造化並行処理です)

続きを読む

脆弱性管理ツール「yamory」を導入しました!

こんにちは、プロダクトセキュリティ部の新沼(cw-niinuma)です。
年末になると世の中が慌ただしくなっていく雰囲気が、わくわくするのは子供の頃から変わりません。

この記事はChatwork Advent Calendar 2021の17日目の記事です。

今日が担当の私は、前回こちらの投稿をしましたがその後についてお伝えしていなかったので今回お伝えしようかと思います。 creators-note.chatwork.com まだ読んだことがなかった方がいたら、是非前回から読んでくれると嬉しいです。

では、今回は導入したツールとそのツールを使った運用についてお伝えしたいと思います。

続きを読む

モバイルアプリ開発チームをプラットフォーム横断で分割した話

f:id:tinpay:20211108185204j:plain こんにちは。モバイルアプリケーション開発部の福井(Twitter: tinpay)です。この記事はChatwork Advent Calendar 2021の16日目の記事となります。

最近はオフィスにたまーに出社できるようになり、大阪オフィスのある福島駅界隈もにぎやかになってきました。

昨年1月から全社的に原則リモート勤務となり、一緒に働いているチームメンバーともオンラインでの交流ばかりになってしまいました。

その中で、今年の2月からモバイルチームを2つに分割して、モバイルアプリの新機能開発や運用保守を行ってきました。

今回は、チームをどのように分割してチームビルディングや課題に取り組んだのか、また、モバイルチームのスクラム開発をどのように強化していったのかを書きます。

続きを読む

アジャイル開発におけるスケジュールを継続的に見直す

こんにちは。都志(@louvre2489)です。

これは Chatwork Advent Calendar 15日目のエントリです。

Chatworkではアジャイルを前提に開発を行っています。プロジェクト特性やチームのルールに依って多少特色はありますが、ほぼ全ての開発がアジャイルに行われているのではないでしょうか(詳細は未確認)。

アジャイル開発に慣れてくるとどういう風に開発を進めれば良いかも共通知ができてくるのですが、アジャイル開発を導入し始める時によくわからなくなるポイントの1つとして『スケジュールをどのように可視化するか?』という課題があると思います。

この課題に対して、私の所属しているチームで行っているスケジュール作成の方法を紹介させていただきたいと思います。

続きを読む

漫画フラジャイルから見たプロダクトセキュリティ

プロダクトセキュリティ部の西川(id:cw-nishikawa)です

うちの猫の名前は「ほろ」と「まみ」です。

この記事はChatwork Advent Calendar 2021の14日目の記事です。

今日は漫画「フラジャイル 病理医岸京一郎の所見」とプロダクトセキュリティ部という題で適当に書いていきますが、 若干のネタバレを含みますのでご了承いただける方のみ読み進めていただければと思います。

続きを読む

Chatworkに入社してから3ヶ月の間に感じたこと

この記事は Chatwork AdventCalendar 2021 10 日目の記事です。

qiita.com


8 月から Chatwork のフロントエンド開発部にjoinさせて頂きました、林 です。

元々 SES として様々な顧客の管理系 Web アプリなどをサーバーサイド、フロントエンド一気通貫で実装などしていた人間で、 自社開発したい!フロントエンドをもっと深掘りしたい!と考えていた際にご縁があって拾って頂きました。

社名は聞いたことがあり、サーバーサイドがモダンな感じ・社員のアウトプットも活発。 所謂「イケイケな会社」というイメージでしたが、入社して蓋を開けてみたらフロントエンドもチャレンジングなことをしており、 ギャップに驚いたのが正直なところです。(イケイケな会社であることは変わりなかった。)

このまま会社の雰囲気、アピールポイントを記事にするでも良かったのですが、 同じような内容の記事は過去に別の方が触れていたりしていると思いますので、 今回は3カ月の中でつらいと感じた出来事と 「じゃぁ、どうするの?」 と言った今後のお話しをさせていただきます。

続きを読む

Akka Actors を便利につかう

Chatwork アドベントカレンダー および Scala アドベントカレンダー の 9 日目の記事です。(盛大に遅刻しました 🙇‍♂️ )

こんにちは。hayasshi です。 サーバーサイド開発部で Scala プロダクトの開発運用保守をしています。

Akka は分散並列処理のためのツールキットです。 クラスタリング、シャーディングの機能をつかい CQRS + ES なシステムを構築したり、ストリーム処理を構築するための機能と、それ向けの様々なミドルウェアとのコネクタをつかい、容易にストリームアプリケーションを構築できたりします。

それらの機能の土台として、Akka Actors という アクターモデル を実装しているモジュールがあります。 Akka Actors (アクターモデル) には、その考え方からくるいくつかの特徴があります。

Akka Actors をつかえば、クラスタリング処理やストリーム処理だけでなく、その特徴をつかって便利に処理を書くことが可能です。

続きを読む