まず、同社の技術アーキテクチャについて説明します。
MySQL + PHP + Java、純粋なインターネット アプリケーション、AWS 上の Docker コンテナ デプロイメント マイクロサービス。
データの機密性はそれほど高くなく、多くの機密データは含まれていません。識別情報は通常、サードパーティのプラットフォームで使用され、当社はユーザーの識別情報をローカルに保存しません。
パソコンはMacしか使えない
Mac コンピュータの深い愛好家であれば、幸運です。
会社ではパソコンはMacしか使えないという規定がありますが、私が入社する前にはこの規定は施行されていませんでした。
義務化時期は2022年8月頃で、既存のWindowsパソコンは強制的に廃棄され、Macパソコンが使用されることになる。私はおそらくこの会社に残っている数少ない(5人以下のはず)うちの1人です。
理由
Windows では、プログラミング中に予期しない問題が発生することがあります。
具体的に何が問題なのかについては言及しなかった。開発担当副社長は「問題がある可能性がある」と理由を説明した。
NodeJS をコンパイルするときの問題は、Windows や Java で使用される文字、スペース、キャリッジ リターンとライン フィードの識別子とは異なる可能性があります。
しかし、私たちは通常 UTF-8 を使用しているのではないでしょうか? Windows と Mac で Java を開発することに実際には違いはありません。
NodeJS の問題は習慣に従って WSL を使用することで解決できます。
開発者には管理者権限がありません
社内のすべてのコンピュータには、開発者が使用するコンピュータも含め、管理者権限がありません。
理由
セキュリティ上の理由から、開発者が自分のコンピュータにウイルスを持ち込んだり、会社がインストールに同意していないソフトウェアをインストールしたりすることを防ぎます。
すべてのコンピュータに管理者権限があるわけではありません。
これには何の問題もないと思いますし、一般ユーザーには管理者権限を与えるべきではありません。開発者はより多くの開発ツールを使用するため、これらのツールを管理者権限でインストールする方が便利です。
実際、私はこの質問に異論はありません。
しかし、インストールとアップグレードを行うたびに数時間待つ必要があり、他の人が会社に来てリモートでインストールするのは非常に面倒です。
私が働いたことのある他の会社は、より柔軟で、インストールするソフトウェアはオンラインで提出され、リモートで認証されるため、通常は数時間も待たずにすぐにインストールできるようになっています。
たとえそれがアップグレードであっても。
問題点としては、新しいコンピュータ環境を構築するのが難しく、新しいコンピュータから実際に環境を構築し、開発状態に至るまでに数週間以上の時間を要します。