BASEプロダクトチームブログ

ネットショップ作成サービス「BASE ( https://thebase.in )」、ショッピングアプリ「BASE ( https://thebase.in/sp )」のプロダクトチームによるブログです。

\非公式/ Go Conference 2022 Spring スポンサー企業4社 アフタートークに2名登壇しました

2022/4/28(木)にオンラインで開催された「\非公式/ Go Conference 2022 Spring スポンサー企業4社 アフタートーク」にBASEからも2名が登壇しました。

andpad.connpass.com

イベントについて

今回登壇させていただいたイベントは先日開催された「Go Conference 2022 Spring」にスポンサーとして協賛していた4社で行われたイベントです。主催のANDPADさまお誘いありがとうございました。

gocon.jp

当日は弊社含めて次の4社(敬称略)のGopherの発表とパネルディスカッションが行われました。

  • 株式会社Showcase Gig
  • BASE株式会社
  • 株式会社LayerX
  • 株式会社ANDPAD

(順番は当日の発表順)

当日のTwitterハッシュタグは#gocon2022_4sponsorでした。

BASEとGo Conference 2022 Spring

先日行われたGo Conference 2022 SpringでBASEが行なったスポンサー内容、メンバーによる登壇内容については次の記事をご参照ください。

devblog.thebase.in

登壇内容について

アフタートークではBASE BANKチームの清水(@budougumi0617)と永野( @glassmonekey)が登壇しました。

当日はYouTubeで配信され、録画は次のとおりです。

www.youtube.com

ANDPADさまの登壇内容については次の記事を参照ください。

\非公式/ Go Conference 2022 Spring スポンサー企業4社 アフタートーク LT内容の解説 〜ExcelとShift-JISとの闘争編〜 - ANDPAD Tech Blog

New Relicを使った Observabilityの実現方法と活用例 by @budougumi0617

BASE株式会社BASE BANKチームにて、 テックリードをしている清水(@budougumi0617)です。
アフタートークでは私たちBASE BANKチームでNew RelicをどのようにGoアプリケーションに導入しているかを発表させていただきました。
Goはアノテーションプログラミングなどが出来ず、明示的にSaaSのSDKの呼び出しをコードの中で実装する必要があります。そのため何も考えずにNew Relicの計装コード(計測用のコード)を適用していくと、次の課題が挙げられます。

  • 新規機能・新規エンドポイントを開発するたびにNew Relicの計装コードが必要になる
  • ビジネスロジックのレビュー以外にNew Relicの対応が漏れていないかレビューする必要がある

発表ではこれらの課題について我々がどのようにアプローチをしているのかサンプルコードと一緒に紹介させていただきました。New Relicを使っていない方にもひとつの設計パターンとして参考にしていただけるかと思います。

Goで始めるTDD by @glassmonkey

おなじくBASE株式会社BASE BANKチームにて、Engineering Program Manager をしていると永野( @glassmonekey)です。

今回のアフタートークではGoでTDDをしつつ小さく作っていくプロセスに関して話をさせていただきました。
TDDを”どう”やるのかという話はよく聞くと思いますが、TDDを"なぜ"やるのかの一例をお伝えできたなら幸いです。
今回はGo Conference 2022 Springで発表の題材にした姓名分割ツールの glassmonkey/seimeiを題材にしました。

github.com

他の方が作ったコードながらも、試しながら作ることで少しずつ理解を重ねつつコードを書くことができました。そのおかげか2~3日ぐらいの短期間ながらも正確に実装することができました。
まさに @t_wadaさんが仰ってた質とスピードの話を体験することができました。 今回の場合だと質を移植元のツール(rskmoi/namedivider-python)が質を担保してくれていたというのも作業としては進めやすくはありました。

github.com

また、発表後に@serimaさんが言ってた点はまさにこれで、昨今のDevOpsの文脈で言われるデプロイ頻度が重要と言われる点もそうですが、開発者個人にもフィードバックループの回数は品質において重要な要素だと再認識しました。
Goはそういった意味でもコンパイル言語ながらもコンパイル時間が短く最高です。

最後に改めて元ツールの作者である@rskmoiさんには感謝を述べたいと思います。世界で2番目にアルゴリズムへの理解が深まったと自負してるので、今後フィードバックは適宜していきたいなと思ってはいます。

パネルディスカッションについて

各個人の発表後は4社合同でパネルディスカッションが行われ、当日は次のような話題が挙がりました。

  • Go Conference 2022 Springで気になった発表
  • データベースパッケージの選定事情
  • アフタートークの発表内容について
    • CSVを扱う際の苦労話
  • 普段どのように登壇内容を決めているのか

他社の方々と普段なかなかお話しすることができない「これハマるよね」という話ができたり、スライド発表とは違った知見共有の時間になったと思います。

宣伝

BASE BANKチームでは Go, Python, PHPを中心に、フロントからインフラまでを一気通貫で開発しています。
また開発だけでなく、機能をグロース・分析・サポートまで担当します。

そんな開発スタイルに興味あるぞって方は永野(@glassmonekey)にDMを送っていただくか、 下記のリンクから気軽にご連絡ください。

herp.careers

「転職活動はしていないけど、Goの日々の開発の困りごとってどうやって解決しているの?」のような雑談がされたい方は@budougumi0617のMeetyでお話しましょう。

meety.net