🐥

今この瞬間からITエンジニアになる

2023/02/01に公開

軽く自己紹介

10年努めたSI会社を辞め、3月からクラウドエンジニアとして働く予定です。
とはいえクラウドの資格も特にもっておらず、業務の中で必要なサービスを使っていただけで、まだまだ駆け出しといったところ。

気持ちも新たに、初心にかえって頑張ろうということでこのブログを始めるに至りました。

この記事について

初心にかえるついでに、これからITエンジニアとして頑張りたいと思っている、けど一歩踏み出すのに何から手を付けていいか分からない…。 と悩んでいる人たちに向けても、ちょっとしたノウハウを共有しつつ、一緒に頑張って行けたらなという思いです。

僕は別に教えるプロでもないし、業界の最先端や最適な手法を知っている訳ではないので、自分の経験をもとにゆるく伝えるだけの気楽なスタイルです。

モチベーション

僕自身、ずっとSIの仕事をしていて、どちらかというと人の管理や報告のための資料作成/決められた手順での開発/保守作業をする日々が続く中、2025年の崖問題に不安や危機感を抱きながら、何かしなきゃ! と、ここ4年間は手探りでスキルアップに励んでいました。

そうやって闇雲に培った知見を後輩やチーム、組織に向けて共有したところ意外に好評だったりしたので、アウトプットすることの価値 をとても感じました。分かりやすく伝えようとすることで自分の理解も深まるし、一石二鳥!

まずは環境を整える

PCの準備

まずは形から入る方がモチベーションアップする人も多いんじゃないでしょうか!
Windows/Mac何でもアリで、自分の好きなものを選べばいいと思います。
ベアボーンPC買って、無料のLinuxOS入れてもいいですし。

ただ僕の最近のオススメはChromebookです。
安価で、スペックは低めですがChromeブラウザが使えれば開発もできる し、いざとなればLinuxとしても活用できます。まだやったことないですが(重要)

そして何より僕は、どんな環境でも差異なく同じように開発できる よう整えることに価値を置いています。ので、今回はChromeブラウザ主体での開発環境構築を進めたいと思います!

GitHubアカウントを作成する

まずはサインアップしましょう。

GitHubとは、Gitのリポジトリをホスティングしてくれるサービスで、世界中の人と共同開発しやすくなる機能が提供されているWebアプリケーション、という理解です。
「GitHub使ってます」となれば一気にITエンジニア感でますよね!

同じようなサービスとして、GitLabBitBucketといったものがあります。

Gitとの違い

レガシーなシステム保守等の現場だと、まだまだGitについて知らない人も多く、そういう現場ではGitの啓蒙から始まることとなります…。Gitはこれです

Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.

オープンソースのバージョン管理システム。

個人的な開発であれば、privateなリポジトリを使うといいです。
(今はフリープランでもprivateリポジトリ作成できるの知らなかった…)

アカウントのセキュリティを高めるために、2要素認証も設定しておきましょう。
https://docs.github.com/ja/authentication/securing-your-account-with-two-factor-authentication-2fa/configuring-two-factor-authentication

自分のリポジトリを作る

サンプルなので、適当に作ります。
https://docs.github.com/ja/get-started/quickstart/create-a-repo
この手順にあるように、簡単な修正反映であればGitHub上、つまりChromeブラウザだけで完結できます。
しかし実際開発するとなると、複数のファイルを同時に編集してビルド/デバッグする必要があるので、単なるファイル編集機能だけでは足りません。

GitHub Codespacesを使う

そのような問題を一気に解決してくれたのが、これです!
https://docs.github.com/ja/codespaces/overview

もともとMicrosoftのVisual Studio Codespacesという名前でサービス提供されてましたが、こちらに統合されたみたいです。
https://devblogs.microsoft.com/visualstudio/visual-studio-codespaces-is-consolidating-into-github-codespaces/

リポジトリの画面から環境を作成することができます。


緑色のボタンからいける

すると、数分も待たずに以下のような画面が出ました。

これでもう、Chromeブラウザ上で開発作業ができてしまいます!すごい。
そして何よりもすごいのは、これがただのエディタ機能だけでなく、Linuxの環境になっていることです!!

右下のターミナルからLinuxのコマンドが実行できます。


dockerまで使える…マジか…

なので、開発に必要なパッケージや実行環境など、通常のLinuxと同様に構築することが可能です。

Codespacesの環境構成

こういう構成らしいです。公式から抜粋。

実際は、VSCodeやChrome等のエディタから、AzureにホストされているLinuxサーバ上のDockerコンテナにアクセスしているようです。このコンテナ自体のカスタマイズも可能。

https://docs.github.com/ja/codespaces/setting-up-your-project-for-codespaces/adding-a-dev-container-configuration/introduction-to-dev-containers#dockerfile

Dockerに関しては分かりやすい記事がたくさんありますので、是非探してみてください。
今後このブログでもDockerfileのカスタマイズはやっていくつもりです。

注意点

このGitHub Codespacesは有料です。
ただ、無料で使える枠もあり、最小スペックのプランなら60h/月が無料なので、休日等に勉強するために使うくらいであれば十分だと思います。
https://github.com/features/codespaces#pricing

それでももっとガンガン開発したい!という猛者はもう、ローカル環境を構築しましょう!
先駆者がいました!
https://zenn.dev/yora_camp/articles/115098edcc38aa

まとめ

これで、ITエンジニアとしての第一歩は踏めました。
開発するためのハードルがかなり下がったんじゃないでしょうか。
あとはこの環境を使って何でもできる!何でもなれる!

今後はGitHubActionsを活用したCI/CDだったり、コンテナのカスタマイズ、AWS等のクラウドサービスを活用した記事など投稿していけたらと思っています。
その際も、どんな環境でも同じように開発できることを意識していきたいです。

Discussion