【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【大阪 / 横浜】インフラ / サーバーサイドエンジニア募集中!

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【導入実績 500社以上】AWS 構築・運用保守・監視サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【CentOS 後継】AlmaLinux OS サーバー構築・移行サービス

【WordPress 専用】クラウドサーバー『ウェブスピード』

【WordPress 専用】クラウドサーバー『ウェブスピード』

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【格安】Webサイト セキュリティ自動診断「クイックスキャナー」

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【低コスト】Wasabi オブジェクトストレージ 構築・運用サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【予約システム開発】EDISONE カスタマイズ開発サービス

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【100URLの登録が0円】Webサイト監視サービス『Appmill』

【200ヶ国以上 グローバル対応】eSIM Marketplace「beSIM(ビーシム)」

【200ヶ国以上 グローバル対応】eSIM Marketplace「beSIM(ビーシム)」

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【中国現地企業に対応】中国クラウド / サーバー構築・運用保守

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【YouTube】ビヨンド公式チャンネル「びよまるチャンネル」

【誰でも簡単】個人開発のハードルを下げる【個人開発エンジニア】

はじめまして!
システム開発部のスジュンです。
今回は趣味の個人開発について書こうと思います。

社内の色々なエンジニアと話をしていると、意外と個人でなにか作っているという人少なかったため、自分がどういった経緯/マインドで個人開発を行っているかをお話できればと思います。

来歴

高校のときに html,css,js,Flash を利用して個人サイト作成をしたのが最初かと思います。
フレームワーク等を使わず生html,css,jsで作っていました。笑

その後情報系学部でプログラミングについて学び、学んだ内容を発展させてプログラムを書いて遊んでいました。
学校で学んだGUIツールの作り方を参考に、マインクラフトの外部ツールを作って一般公開したりなんかもしていました。(今でもたまに問い合わせが来ます)

今も休憩時間や退勤後、帰宅後等の空き時間に趣味でツール開発等を行っています。

個人開発とは

そもそも個人開発とは何かを検索してみたところ、以下のような記述が落ちていました。

ソフトウェアの個人開発とは、ソフトウェアエンジニアが自分のプライベートな時間を使って、Webサイトやスマートフォン向けのアプリを作成・公開・運用する趣味活動です。

概ね世間一般の認識はこんな感じかと思います。

個人開発のメリット

個人開発のメリットとして、以下の点が挙げられると思います。

自己成長とスキル向上

個人開発を通じて、自身のスキルや知識を向上させることができます。自分ひとりで様々な側面に取り組むことで、より幅広い視野を持ち、問題解決能力や創造性が向上します。仕事のプロジェクトでは導入されていないアーキテクチャや設計手法を取り入れることができます。

自由な改修

個人で開発しているので、もちろん自分の好きに改修を行うことができます。開発途中で「ちがうな」と思ったりした場合には、すぐに自分が思った方向に舵を切ることができます。これを突き詰めていくと、自分が考えた最強の〇〇ツールが最終的に完成します。

ポートフォリオになる

正直会社のブログで書くべきことではないかも知れませんが、個人で開発したソフトウェアなので、もちろん全て自分の手柄になり、就職等に利用できるかと思います。「ツールを一人で作って、GitHub等にアップロードしてリリースした」となると、ある程度のスキルが担保されていると見てもらえるかも知れません。

ちょっと難しく考えすぎてはいませんか?

アプリを作成、公開、運用…。
一見するとちょっとハードルが高いですね。

確かに開発したアプリ/サービスを外部公開して一般利用されている人が個人開発者として崇められている雰囲気はあります。
しかし個人的には、もっと間口を広く取って、気楽に考えていいと思います。

本質は、個人で開発することだと考えています。

世間一般に公開せず、自分が使う用にプログラムを書いてローカルで動かして使うことも個人開発の一種であると考えます。
社内向けでも一般向けでも、公開するとドキュメントの整理や保守等色々なことを考える必要があるのって、やっぱり面倒だしハードルが高いですよね…。

例えば…

自分が過去に作成したものを参考に、以下のようなものも個人開発に含めていいと考えています。

日々の生活を楽にする

  • Tampermonkey等のWebブラウザの拡張機能を用いて、よく使うサイトのスタイルを調整する
  • 自作のChrome拡張機能を利用して、よく使うサイトを更に使いやすくする
  • Google Spreadsheet,Form,GASを利用して家計簿を集計してメール送信する

日々の仕事を楽にする

  • エディタの拡張機能を作成する(Jetbrains,VSCode)
  • 日々の業務で行うルーティン作業を自動化する

エンジニアが日々触るものもまた、エンジニアによって作られており、拡張がしやすい仕組みが作られていることが多いです。
日々の作業の中で不満点等あれば、試しにいじってみるのはいかがでしょうか?

何から始めれば良い?

個人開発のハードルを限りなく低くすると、やはり個人的にはTampermonkey等でのWebサイトへのスクリプト挿入があると思います。
知識的には Vanilla Javascript の知識があれば作成できますし、作るものを考えるという点では日々使うサイトに何かしら不満があるという方は多いかと思います。
自分で作っているものをより具体的に述べますと、以下のような機能を持ったスクリプトを作っています。

  • サイトにあるボタン群の位置移動
  • 表示される内容のフィルタリング
  • マウスホバーでサムネイル画像を表示
  • テキストエリアにテンプレ文字列を挿入
  • ページの内容を整形してクリップボードにコピー

いわゆる、自分向けのマイクロサービスみたいなものです。
ね、簡単でしょ?🧔🏽‍♂️

おわりに

初めてのブログというところで、今回は自分の来歴と趣味グラミングについて書かせていただきました。
今後は、実際に個人開発を行っているプロジェクトや、その中で得た学び等を発信していければと思います。

最後まで読んでいただき、ありがとうございました!

みんなもっと気楽に個人開発しようよ!

この記事がお役に立てば【 いいね 】のご協力をお願いいたします!
7
読み込み中...
7 票, 平均: 1.00 / 17
255
X facebook はてなブックマーク pocket
【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【2024.6.30 CentOS サポート終了】CentOS サーバー移行ソリューション

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

【大阪 / 横浜】インフラエンジニア・サーバーサイドエンジニア 積極採用中!

この記事をかいた人

About the author

スジュン

過去にはゲーム会社でゲーム制作をしていました。
趣味はプログラミングとゲーム(LoL等)です。
ディズニーではフィガロが好きです!