Pythonで業務自動化し作業60時間を5秒にした話
「業務自動化のためには、どのくらいの知識が必要なのか。」
「業務自動化できたらいいけど、何から手をつけたらいいのかわからない」
普段の業務を自動化したいと思うことはたくさんあることでしょう。業務の中には、単純なタスクがたくさんあり、それらを省略できればもっと他のことができるようになるのに。。。そう思う時はとても多いかと思います。
単純作業をやっているだけでは、あなたの価値にはなりません。なぜなら単純作業は替えが効くからです。替えが効く人間は価値を生み出してはいません。なので、誰でもないあなたが欲しいという状態にはならないのです。
この記事では、業務自動化をしたことのない私が、業務の自動化を自力で調べ試行錯誤しながら会社の業務を自動化していった中で、「業務自動化のために必要な知識」「まず何が必要で、どうすればできるか」を解説していきます。
また、実際に会社のどんな業務を自動化したのかを解説し ていきたいと思います。
業務の自動化をしていきたい。変えの効かない人間になりたい。こんな野望を持っている人に読んでいただきたいと思います。
目次(クリックで読みたい部分にジャンプできます)
自動化をしたいならまずこれをやれ!
自動化をしたいと思ったら、まずするべきことがあります。それは業務の可視化です。
業務の可視化とは、普段やっている業務、もしくは自動化したい業務をどんな手順でこなしているのか、どんな操作を行なっているのかを書き出すことです。
これをやる理由は2つあります。
まず一つ目は、「自分でどんな作業を自動化すれば良いか、具体的なイメージができるからです。」
自動化するにはコードを書く訳ですが、具体的などんな作業を自動化するのかを具体化できていないとコードを書きようがありません。なので、普段の業務の一挙手一投足を可視化することで自動化することができるようになるのです。
2つ目の理由は、「どんなところを自動化するのがいいのか、チームで共有できること」です。業務自動化をする対象が、自分個人でやっているものであればこの点は不要かと思いますが、多くの場合は会社や他の人も関わっている中で業務自動化をすることが多いのではないかと思います。
この際には、「普段このような流れで業務を行っているんですけど、〇〇〜〇〇の部分を自動化できそうです。どうですか?」などと、業務全体の流れをチームで共有しながら行うことができます。チームで共有して、許可が降りれば堂々と開発に時間をかけることができるでしょう。
私はよくマニュアルを作成してしまいます。
マニュアルの中に、詳細にどんなことをするのか、注意点は何かなどと、初めて業務をする人でもわかるようにします。マニュアルを作成することで、後に引き継ぎが出ても大丈夫ですし、業務自動化の開発中でも「このマニュアル通りにやっておいて」と言えば、楽になります。
また、マニュアルを作成することで業務の可視化になります。業務全体の流れを把握できて、どんな作業が自動化できそうか検討することができるのです。
なので、自動化をしたいと思っているなら、まずは業務を可視化することをしましょう。
自動化できるところを探せ。
あなたは、業務の工程をリストアップし、業務の中でどんなことをやっているのかを可視化できるようになりました。ここから自動化できるところを探す作業になります。
結論、自分の技術で自動化できそうなところを探していきます。
私は、普段繰り返し作業していることは、すべて自動化できることだと考えています。なので、技術さえあれば、普段の決まった業務はすべて自動化できるはずなのです。ただ、技術をつけるためには時間と意欲がないとできません。今自分が持っている技術で最大限できるところもしくは、ちょっと勉強すればできそうなところを自動化できるか検討しましょう。
あれ、自分の技術で自動化できるところはないぞ?そうなった時はどうすれば良いでしょうか。
誰かに頼んでみますか?外注してみますか?このような手段もあることでしょう。ですが、自分自身で技術をつけて自動化できるところを増やしていくことが最もあなたのためにも会社のためにも良い選択です。
自分で技術をつけることは、自分自身の価値を上げることです。誰かに頼んだり外注化したりはあなたである必要はありません。また、あなたが力をつけることは会社にとっては安上がりのはずです。また、自動化が成功できてメンテナンスもしっかりとしていれば、会社は半永久的に作業を減らすことができます。お互いにメリットは十分感じられるはずです。
業務を自動化していきながら、自分の技術を増やすことができるとてもWin-Winな関係を築くことができるでしょう。
自動化をすることであなたの価値は爆増する
自動化をすることはあなたの価値を大きく上げます。
あなたが普段行っている業務が、決まったものではなく、日々あなたの対応力が求められるようなことをしているのであれば、そこに自動化の必要性はあまりないのかもしれません。
毎月同じ繰り返しの業務があったり、対応方法が決まっている作業をしている場合は、あなたの価値は高くありません。ですが、自動化をすることで一気に価値を上げることが可能です。今までは、あなた以外にもできる作業であったはずが、あなた以外の人にはなかなかできない事をしているのですから。
また、自動化をしたら自分のタスクがなくなってしまうんではないか?自分の仕事がなくなって必要性がなくなってしまうのではないか?このように思う方もいるかと思います。
これは違います。むしろ会社はあなたにもっといて欲しいと思うようになるでしょう。そのほかのこんな業務もあるんだけど自動化できないかな?と効率化の話をあなたに持ち込んでくるかと思います。逆に、今まで単純作業だけをして満足している人は、逆にピンチとなります。自動化をしたことにより、行っていた業務がすべてロボットが行ってくれるようになるので、必要性がなくなってしまうのです。
そして、価値が上がるのは、会社の中だけではありません。市場価値が上がります。自動化は数字に示しやすいです。もともと何時間とかけていた作業が1分ほどに短縮できました。などと言えば、とてもわかりやすい実績となります。そうすると自分が在籍している会社でなくてもあなたを必要とする会社が多くあるでしょう。引く手数多かと思います。
自動化をすることは、あなたの価値を爆増させることです。普段作業をしている人には更に効果抜群でしょう。
私が行った自動化経験談
私が業務自動化を行ったのは、サービスの移行に伴うダウンロード作業の短縮でした。
私が属している会社では、GoogleWorkSpaceからMicrosoft365への移行を検討していました。GoogleSheetをExcel形式にダウンロードする必要があるのですが、大量にあるファイルを一括でダウンロードするツールがなく一つ一つ手作業でやる必要があることが判明していました。
ファイルは一つの部署で400ファイル以上はあり、全部署を合わせると3000ファイルほどありました。それらをダウンロードするとなると、大変ですし全作業をするとなると1つのファイルをダウンロードするのに90秒かかるとして、75時間ほどの作業でした。また、手作業でダウンロードしようとすると、ダウンロードしたかどうかのチェックもしなければいけませんので余計に時間がかかることも予想されました。
私は、Pythonを触ったことがありました。とりあえずできるかどうか検討してみます、という体で一週間ほど時間をもらいました。その中で、調べていくとURLがわかればダウンロードできそうだぞということが話かり、あとはそれを取得するだけだ。ということもわかりました。(細かいことはこちらの記事を見てください)
調査期間でとりあえず開発を8割方完成させることを目標にしていました。(これは元マイクロソフトの中島聡さんから学んだことです。詳しくはこちら)一週間ほどの調査期間で1から調べ、一覧からURLを順番に取得することができないか試行錯誤しながら調べました。そして、無我夢中で開発をしました。開発をしている中では、誰かの役に立っていることと、自分が価値を提供できていることの嬉しさと、開発すること自体の楽しさから続けることができました。
そして、ようやく一覧からダウンロードはできる状態になり、ログを残すことで一度ダウンロードしたものはダウンロードできないようにすることも成功しました。そこでやっと、開発できそうです。と伝え、開発期間を見積もり伝えました。
開発期間をまたもらったわけですが、実際には大元はできているのであとは細かい修正をすることだけでした。
そして、細かい修正の後、実際に3000ファイルほどの一括ダウンロードができるようになりました。
自動化をすることで良かったのは、まず経験談、実績として話せるということがとても大きいと思います。それは市場価値として残りますので、転職をしても決して困ることのないスキルを身につけることができたと思います。業務でこんなことをしましたというのはインパクトが大事ですので、数字で表せる自動化はとてもためになることだと感じています。
まとめ
今回は、自動化に対する自分の進め方と、自分の経験談を交えて紹介いたしました。
これから自動化を検討しているという方、自分の価値をあげたいと思っている方はぜひ参考にしていただけたら嬉しいです。以下の記事では、実際に自動化で用いたコードも紹介しています。興味がある方は合わせてご覧ください。