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

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

PyCon JP 2019に登壇、PythonでのCIとテストの話をしました

どうも、はじめまして、東口(@hgsgtk)です。BASE BANK株式会社 Dev Divisionでソフトウェアエンジニアをしています。この度、9月14日〜9月17日に開催されたPyCon JP 2019に参加し、「Pythonを使った APIサーバー開発を始める際に 整備したCIとテスト機構」というタイトルで発表してきました。

PyCon JP 2019とは

9月14日〜9月17日に開催されたPythonエンジニアが一同に集う国内最大級のPythonのカンファレンスです。9月16日・17日の後半2日間でセッションスピーカーによるトークが行われる2日間で、私は16日の16:00から15分間登壇してきました。

pycon.jp

f:id:khigashigashi:20190916203520j:plain

発表した内容

発表した内容は、Pythonを使った APIサーバー開発を始める際に 整備したCIとテスト機構というタイトルです。

pycon.jp

トークの概要は次のような内容です。

Pythonアプリケーションを開発し始める際のCIでのコード検査とユニットテストの整備について取り上げます。CIについては、スタイルチェックやエラー解析の自動化、ユニットテストについては、実DBを利用するケース等事前の設計・機構等の必要な工夫を紹介します。

発表資料はSpeaker Deckに公開しています。

発表動画はYouTubeにて公開いただいていました。

www.youtube.com

もし、私がカンファレンスでスピーカーしているのを見かけたことがある方がいれば、PHP・Go言語のコミュニティで発表してる人というイメージをお持ちかもしれないのですが、BASE BANK株式会社で運営している「YELL BANK(エールバンク)」というサービスの裏側でPythonを利用したAPIも開発しています。その際の開発知見をCI・コード検査・自動テストの3点に絞ってまとめた内容がこの資料になります。

Pythonに限らず、メインで知見のある言語以外を業務で扱う際に、CI・コード検査・自動テストは、たんにコード品質を保証するだけでなく、開発者自身の学習サイクルを促進してくれる役割を果たしてくれていると感じていました。その感覚を言語化することをこの資料では試みました。

ありがたいことに、会場は満員御礼で、別会場での中継会場も使われるなど、多くの方に来ていただきました。

TwitterのTLをエゴサすると、誰かの参考になる内容にはなったようなのでひとまず安堵しました(ほっ)。

qiita.com

sayuhanten.hateblo.jp

wotsushi.hatenablog.com

早速感想を共有いただいた方々誠にありがとうございます(終わった直後は期待感に応えられたか不安な気持ちが強いので感想を形にしていただけると非常に登壇者は安心するもので...)。

さいごに

個人的にPyCon JPは私がぴよぴよエンジニアをしていた際に、人生で初めて参加したカンファレンス(PyCon JP 2015)でした。当時登壇されている方々に、「いつかあそこで登壇するくらいになれたら良いなぁ」とあこがれて、それが現在、技術カンファレンスで登壇するようになった最初の原体験なるものだったりします。

今回、PyCon JP 2019で登壇するお時間をいただけたのは、各種カンファレンスの中でも特にエモい気持ちが募る時間でした。

複数言語・複数レイヤの技術に触れて総合的な視点を持ちたい私にとって、Pythonという言語は、コードの可読性をいかに上げるか、データ分析の手法を理解・実践する上でこれからも付き合っていきたい技術なので、また来年2020に別の知見を持ってこれるように、日々のサービス開発に精進していきたいと思います。 では、またっ。