普段思ったことや、雑記。

Menu & Search

観測範囲におけるITフリーランス界隈での「できる(と言われる)エンジニア」の特徴

2019年5月1日

ITフリーランス市場における逸材系の記事の第二弾。今回は開発者の特徴にフォーカスしてお伝えしたい。会社員の市場でのできるエンジニアと、ITフリーランス界隈のできる(と言われる)エンジニアはどうも性質が違うらしいことが最近分かった。ITフリーランス界隈で、私の観測範囲において、実際に発注者からできる(と言われる)エンジニアの特徴についてまとめてみた。

ITフリーランス界隈での「できる(と言われる)エンジニア」の特徴

1. フレームワークまたはライブラリがある程度使えて、成果物を出すのが早い

最近のフレームワークやライブラリの流行り・廃り、または使い方を詳しく知っている。分かりやすい特徴だと、Railsを好み、それに寄ってる開発環境(ORMがActive Recordを模して作られている環境とか)だと成果物が出てくるのがとにかく早い。

2. アサインされた要件の実装の早さ優先なために、システム全体を俯瞰して実装を考えない。よって、要件の実装は再利用可能や分離可能な方針を取らない

端的に言うと、設計や検証にあまり時間をかけない。アサインされた該当する機能要件のみを仕上げるためだけに全力を尽くすので、システム全体を通した設計というのはあまりせず、あくまで該当機能の範囲で設計をし、実装をする。
雑に言うと、運用の段階ということはあまり考えていない気がする。会社員の感覚だと、なるべくシステムのメンテナンスコストを極力下げるシンプルな設計を目指し、そのための検証にも時間をある程度はかけるものだが、そうではないようだ。

3. システムの設計は気にしないのだが、特にインタプリタ言語での開発環境において、やたらモダンな記法にこだわる

2で言及したように、システム全体を通してどうか、変更時のコストは、ということはほぼ考えないのだが、プログラムのソースコードレベルでは、やたらモダンな書き方であったり、処理上さほど速度差が生まれない内容のコードについて色々を気にして、ツッコミを入れてくる。これが、開発対象が組み込み系で、インタプリタ言語ではないコンパイル言語を採用しており、わずかなボトルネックさえも気にする必要がある環境ならまだ分かる。

そもそもインタプリタ言語というところなので、設計を気にした上での発言なら理解ができるのだが、やけに細かいところは気にするようだ。重要な点として、ツッコミを入れるわりには特に主だったエビデンスがないことが多いのだ。モダンだから、主流となっているから、他の実装箇所に合わせてください(まあ、これは多少分からなくもないか)、などが理由として多い。

4. 必要な知識の共有はしない。プレーヤーはあくまで個であり、自分でしかない

基本、READMEを書かない、もしくはREADMEの情報量が極端に少なく、手順として必要十分の情報量を備えていない。リポジトリにREADMEがない場合は環境構築手順をリクエストすると個人のメモ書きが出てきたり、そのメモ書きをリポジトリへコミットしてくれ、と言ってもコミットしてくれない。

他では、READMEがまともではないので、私が勝手に重厚に書いていた事とかもあった。そして、そのように後続に参画する開発者のために手厚く書くとなぜか怒られる。コイツらは秘事口伝が好きなのか?忍者か何かだったのか…。

コメント: 最新の道具の使い方は知っていて、システム開発工程のコーディングの部分をやたら気にする人たちは、ITフリーランス界隈ではできる(と言われる)エンジニア!

書いたとおりで、開発や技術の一部分に対するこだわりが強い人たちで、そのこだわりは発注者からすると良く映っているケースが私の観測範囲では見受けられた。小規模な案件だったりすると、発注者が技術がよく分からない人も多いので、そもそも開発者に対する基準もザルだったりすると思う。手が早いところで、もしかしたら発注者からするとコイツできる!という判断になっているのかもしれない。

上に書いてきた、できる(と言われる)エンジニアと仕事をしてみた身として、まともな感覚を持つエンジニアが彼らと関わって良いことは何一つない。唯一、得られることはストレスだ。彼らは、チームプレイをしているようで、していないのではないかと感じることが度々あった。ドキュメントをまともに書かなかったり、システムの全体の構成を考えないで実装に踏み切ったりと、後からプロジェクトに参画しようとするタイミングで唖然とする状況だったこともある。正直、コーディングに対するこだわりから、彼らはエンジニアというか「コーダー」で良いんじゃないかっていうくらいな見方には個人的にはなっている。それでも成果物を出すのが早ければ能力がある、という判断を下すITフリーランス市場の発注者側にも問題を感じている。

以下は私に関する蛇足だが、今の私のITフリーランス市場に対する見方はそういう感じなので、兼業でフリーランス活動というのはしばらく休止し、コンピュータの本質的なことに関する学習…UNIXの設計思想や仕組みの学習、CによるLinuxコマンドの写経、C++によるアルゴリズム実装のトレーニングを自分に課しているところだ。彼らとここ半年圏内で濃密に触れ合った結果、こうしてまともなエンジニアとはどうあるべきなのか、を最近は考えていることが多くなった。

Article Tags
mmiyauchi

プログラムを書きながらTranceを聴くのが良いですね。みなさんも聴いたほうがいいですよ、Trance。EDMよりハードトランスでしょ。

Related article

ITフリーランス界隈で出会った逸材たちの記録

会社員の世界だけでは…

日本の開発者は、プログラミング言語の勉強はたいがいにして英語も勉強すべき

日本の開発者は、プログラミング言語の勉強はたいがいにして英語も勉強すべき

Microsoftが…

QA(Quality Assurance)について勉強してきた

QA(Quality Assurance)について勉強してきた

恥ずかしながら、QA…

Discussion about this post

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Type your search keyword, and press enter to search
%d人のブロガーが「いいね」をつけました。