鈴木商店にジョインしたDidyです

2021年07月09日

はじめに

こんにちは、鈴木商店のDidyです。

2021年5月より鈴木商店に入社し、チーム石崎にジョインしました。
今回は某ブログのジョインネタを真似した自己紹介と、6月の社内報告会で発表できなかった「入社1か月でやった事」を記事にしました。

これまで

社会人になってからエンジニアとして8年間ほど働いています。
新卒入社した会社(前々職)ではWindows系アプリ開発、前職ではバックエンドを担当してました。
ずっと受託開発のチーム配属です。主にアプリの開発、保守とサポート等を行ってました。

好きなもの・こと

・ よくアニメを観ます。
|—- Dアニメストア、Amazon Prime VideoとNetflixに加入してます。

・ 愛用エディタはVim
|—- と社内で言い回ってますが嘘です。本当はNeovimです。

・ 好きな言語はPerlとRustです。
|—- Perlは前職のメイン言語でした。最初は好きになれませんでしたが、今では簡単なプログラムや試しに何かを作る時は、まずはPerlで組むほど重宝してます。
|—- 尊敬する人に「メモリを意識してプログラムを書くのは為になる。だからC言語の勉強は良いよ」と助言を頂きました。当時Haskellに夢中だった私はRustに手を出しました。

現在(入社1か月でやった事)

1. Pythonの勉強

配属先のプロジェクトのメイン言語がPythonだから猛勉強しました。
と言っても前職で少し触った経験があるため、主に使用ライブラリとかを見てました。
折角なのでプロジェクトのテストに使用するライブラリを紹介します。

1-1. pytest

Pythonのテストフレームワークです。標準のunittestより簡潔でPythonらしいコードを記述できます。

1-1-1. テスト本体と前後の処理を分ける

@pytest.fixtureデコレータ付きの関数を用意すればテスト本体から前後の処理を切り分けられます。
以下のテストスクリプトはtest_count_users()/test_update_user()の順番で実行されます。
現在の@pytest.fixtureのscopefunctionのため各テストの前後でsetup_and_teardown()が2回呼ばれる事になります。
このscopeをfunctionからmoduleに変更したら、モジュール単位となるため実行は一度だけになります。

1-1-2. 複数パターンのテストケースを用意する

@pytest.mark.parametrizeデコレータをテスト関数につけるだけで複数パターンのテストケースを作成できます。

2-1. httpretty

PythonのHTTPクライアントのモックツールです。
モック先のURLとレスポンスを記述するだけで使用できます。
リクエストの内容を確認できるため、正しいパラメータ等が渡されてるかどうかのチェックに使えます。

3. 開発環境の構築

入社してから暫くはLanguageClient-neovimpython-language-serverを利用していました。
でも最近はcoc.nvimとpyrightに移行しました。

4. コンテナ開発

プライベートでDockerを軽く触った程度の経験です。
現プロジェクトはDocker上で動くものが多いので勉強中です。

Kubernetsは難しい。良い資料または本があれば欲しい。

最後に

何も分からない未熟者です。
少しでも早く業務に慣れて、お役に立てるよう努めて参ります。
これからよろしくお願いします。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です