タグ別アーカイブ: 開発技術

技術力-開発技術

たとえば、開発技術に優れているのであれば、困っている人がいたら助けてあげましょう。PMがある開発担当者のところで悩んでいてそれがその担当者のバグでなかなか治らなかったとすると、あっさり解決してあげてください。PMに対するアピールとしてはかなり強力です。タイミングとしては、やることがなくなってどうしていいかわからず、固まっているときです。何かをしているときに口を出すとただのおせっかいになってしまします。

固まっている人がいたら声をかけてあげましょう。
正直みんなは悩みすぎです。一つのバグに1日とか2日悩んでたというのをよく聞きます。がっくりです、一時間悩んでわからなければいったん棚上げして後ででもチームで相談すればいいのです。一時間悩んで解決しないものがその人が2時間悩んで解決するとは思えません。文殊の知恵を集めましょう。
私は自分でも解決しますが、わからないことや不得意なこともあります。PJの中で誰がどの技術に詳しいかどういう性格をしているかを把握しておきましょう。困ったときに必要な人に聞いたり、つないであげるだけでもかなり強力です。
自分がわからなかったときどうするか?私は1時間たっても解決しなかったら騒ぎます。みんな寄ってきてなんだかんだ解決してくれたりします。ありがたいです。

技術はどのように身に着けたらよいでしょうか。
私は開発技術は60%センスだと思っていますが、残りは他人のソースをどれだけ読んだかと考えています。ソースを作る時の考え方を理解して何を考えてこうしたのかこうすべきなのはなぜかということを考えつつソースコードを読むのです。そうすると、だんだん物語を読むように、ソースが語りかけてくるようになります。書いた人の性格がわかったり、だれか書いたかわかるようになってきます。
制御や低レベルの関数群などはベテランが作るべきです、またベテランが作っていることが多いです。彼らの経験がそのソースには生きています。なぜこれだけの機能なのにこんなに長いのか?堅牢な仕組みが出来上がっているかもしれません。インターフェース関連は特に経験が生きてくる面があります。あるいは単純に冗長なだけかもしれません、機能の堅牢性だけでなく、メンテナンス性、正規化等の観点からもソースを読むようにするといいかもしれませんね。

ソースを読むということからするとOSSに手を出すのもいいかもしれません。ここでは技術力だけでなく人脈も身に付きます。私もいくつかのコミュニティーに参加して楽しんだことがあります。この世界では飛び込めばすぐそこにあります。自分でもやれるし人に会うこともできます。いろんなOSSコミュニティーがあります。ぜひ飛び込んでみてください。







私はもともとCプログラマだったのですが、マニアックなCの使い方も面白いですよね。仕事ではメンテナンス性が悪くなるので可読性を優先しますが・・・


オープンソースコミュニティーに参加するものいいですが、自分で運営してみるのもいいかもしれませんね

技術力

ここでいう技術力はIT技術力を指します。
チームリーダを任されるためには技術力が必須です。プログラマとして技術力がなければプログラマのリーダを任せてみようとは思わないからです。
プログラマーの技術は表現するのが難しいですが、

開発エンジニアですと
・要件を理解して設計をすることができる
・バグの少ない品質の良いプログラミングができる
・バグがあった時に他人が作ったところでも解析を行って原因の特定修正ができる

基盤エンジニアですと
・要件を理解してサーバあるいは機能の設計をすることができる
・特定の製品に詳しく、それを利用した機能の構築ができる

というレベルになろうかと思います。
単に指示に従ってできるというだけではだめでその一歩だけ先のものが求められます。
指導できる技術力です。

技術の優れている人は信頼されますから上に行きますが、大抵の場合、それらの技術力を身に着けるのはこの段階です。
偉くなってしまうと細かい知識が不要になったり、ノウハウ的なところを人に任せてしまうということも多いです。本当の技術力を身に着けるのはしーむリーダの時期と理解して技術力を磨きましょう。

ここでは
①SI技術
②開発技術
③システム基盤技術
④運用技術
について述べます

例によって、気ままに書きますので順番の前後等あります、気長にお待ちください。