会社のコンテストに参加してスキルアップを目指そう | 気分良く前向きに生きよう & テクニカルを楽しむ

気分良く前向きに生きよう & テクニカルを楽しむ

日常感じた心の世界に通じることや脳の働きに関することを書きながら、PCや携帯やプログラミングなどの技術的なことなども書いていこうと思います。

先日、会社の中の我々の部署にて、ちょっとしたコンテストがありました。

それは、部署内で3人くらいのチームを任意で作り、そのチームで新しいプロセスや新しいツールのプロトタイプを作って出し合い、素晴らしいものには賞品がでる、という類のものでした。

もちろん、優秀なアイデアは実際に本番プロセスに組み込まれる可能性もあります。

こういうイベントでは、どこの国でもいつの時代でもそうだとおもいますが、だいたい2極化する傾向があり、「よし、やってやるぞ!」と張り切るタイプの人達と、「なんだよ~、この忙しいのにそんなことやってる時間がどこにあるんだよ~」というタイプの人達に分かれると思います。

正直自分は、基本的に後者です。
この忙しい日々の中でいつそんな流暢なことをする時間がとれるというのだ。。と直感的に思ってしまうタイプです。

しかし一方で、客観的に見て こういう積極的なコンテストを定期的にやっていくことで、モチベーションがあがるタイプの人が少なからずいることも事実であり、また実施しなければ見えないであろう新しい発見があることも、理解しています。
つまり組織として実施する意味のあるイベントであると思っています。

また、別の角度から考えれば、このコンテストは個人的に見ても大変有益です。
というのは、基本的に制約がない=自分が興味がある分野や、通常は自分の責任範囲ではないけれどもやってみたかった分野に対して何かをすることが許されますので、「いい機会」として活用することが可能だからです。

例えば自分は今はエンジニアでもなければ開発者でもありませんが、このコンテストの中では開発者として参加することも可能であり、しかも自分がやってみたい分野、例えばPythonで機械学習を活用したツールを作るといった内容でプロジェクトを起こすことができます。

ということで、参加することにしました。

せっかく参加するので、
1. 実際にニーズがあるもの
2. 比較的目新しい技術、AI・機械学習・深層学習といった技術を活用しているもの
3. 100人以上いるうちの部署の中で、ほぼ自分以外にやらないと思われるもの
4. 実現可能なもの


という条件で、考えてみることにしました。

特に3.の「ほぼ自分以外にやらないもの」がポイントになってくると思いますが、今回は自分が日本人で日本語ネイティブであることを生かしたものにすることにしました。
うちの部署の中で日本人は、自分を含めて3人しかおらず、しかもエンジニア経験がある日本人は自分ひとりですので、そのあたりを生かしたいと思いました。


最近、面白いとおもったPythonのライブラリに、Janomeという、日本語の品詞分類ができる解析器があります。
これが実に素晴らしくて、例えば以下のような簡単なコードで、「今日はカレーを食べたいです」という文章を構成している単語の分類ができます。




実行結果は以下の通りです。




日本語の文章の解析は非常に難しいと言われておりましたが、今ではこんなにもすばらしい機能を持ったライブラリを、無料で手軽にこんな簡単なコードで実現できるということを知り、感動しました。

これに加えて、以前別の記事でも紹介したSVM(サポートベクターマシン)を使っての機械学習を活用し、ちょっと面白いことができそうだと思いました。

それ以上の情報はここに書くことはできませんが、とにかく日本語でのお問い合わせに対して実対応する外国人とのギャップを少しでも埋めることを目的としたツールを作成しました。

夜中に審査員(マネージャー陣)に対してプレゼントデモを行い、結果は翌朝知らされました。


残念ながら入賞はなりませんでしたが、少なくともこういう機会がなければ上記のJanomeライブラリや機械学習を現実に活用したツールを毎日深夜に作るという行動は起こさなかったと思いますので、非常に勉強になりました。

そして連日深夜に作業をするに際して、多大な協力をしてくれたカミさんには大変感謝しています。