方々が名を連ねる部署でした。公開するに至るまでの道のりを解説します。こと清水直樹と申します。パッケージを公開するに至るまでの道のりについての記事ですので、まずは簡単に自己紹介をさせていただきたいと思います。学生時代まずは私が「どれぐらい初心者だったのか」をご説明するために、学生時代のお話です。年間のほとんどはラグビー部での部活動に費やしていました。スクラム」でGoogle検索するとソフトウェア開発プロセスのスクラムではなく、ラグビーのスクラムの記事が出てくるほどです。使ったプログラムを書きながらスポーツ映像処理に関する理論やアプリケーションを題材にした研究をしていました。ため、ソフトウェアエンジニアとしてのコーディングは全くと言って良いほどできていませんでした。つの記事が書けてしまうほどの分量があるため、また別の機会で詳しく書きたいと思っていますが、一言で言うと私は「プログラミング経験はあるが、超初心者エンジニア」という状態で新卒エンジニアとして社会人になりました。プラットフォームの品質担保及び向上に関する業務に携わっております。Japanの自動システムテストを実装しています。Test”の略称です。分断方式ではなく、エンジニアがテストをするエンジニアがテストに関する生産活動を行うというアプローチをとるために生まれた組織です。レポートで紹介されています。エンジニアとして入社しました。アプリケーション開発をゼロから学びました。レポートに詳しく取り上げられているため、ぜひ御覧ください。グループに配属となりました。人生がスタートしました。テストを書くことです。テストが主になります。サイトでゲームを新規に作成し、そのゲームをユーザに向けて公開する」といったシナリオの全てを自動化し、テストとして実行します。代表的なテストケースとして、「フォームから入力し保存したゲームのタイトルが、正しく反映されていること」というようなものが挙げられます。使用した擬似コードで表すと、以下のようになります。何らかのリリースが入る度、上記のようなテストケース群から成るリグレッションテストを実行しており一定の効果を上げられていたのですが、ある問題に関してはこのリグレッションテストでは検知できないという懸念がありました。それは、「マルチバイト文字列の文字化け」です。用いて入力する文字列をランダムに生成しています。生成される文字列は英数字のみのため、マルチバイト文字を入力して保存した際、表示される文字列が文字化けを起こしてしまうようなデグレが発生しても検出できないのです。脱初心者に必要なこと業務で困っていたことは上記の通りなのですが、もう一つ困っていたことがありました。方々の実力を目の当たりにして、どのようにしてその人たちに追いつき、追い越せばよいかのイメージが湧かない、ということです。さんから今回の記事を執筆するきっかけにもなったアドバイスをいただきました。それは「業務外のエンジニア活動にも積極的に取り組む」ということです。成長であり、そういった成長があるからこそ、業務でも大きな活躍ができるのだという指摘でした。さんのアドバイスで私に足らないものは何か、今すべきことは何かをはっきりと知ることができました。パッケージを作って公開してしまおう、ということでした。パッケージになるため、完全に業務外のエンジニア活動とは言えないのかもしれません。作成に取り掛かりました。randexp-multibyteについて簡単にご紹介します。randexpを使用していました。パッケージなのですが、やはり日本語対応のプロダクトのテスト用途としては日本語文字列のランダム生成ができないことが課題でした。拡張する形で実装しました。テストも担当しているため、韓国語の生成にも対応しました。作成した手順を解説します。パッケージの名前をどうするかを決めなければなりません。ガイドを参考にしました。記載されている内容を要約します。パッケージの名前を見ていると、「名前を見ても何をするモジュールかわからない!」となることが多いです。でない人にその働きは全くわかりません。生まれたのだそうです。パッケージ作成を心がけていきたいな、と思っています。パッケージの実装に着手します。パッケージを作成しました。パッケージのひな形を作成します。パッケージ名に置き換えてください。テストのひな形も同時に生成するものです。