最近よく聞くIoTって何のこと?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

最近よく聞く言葉に...

「IoT」

という言葉があります。

ITじゃなくてIoT?

IoTとは
いったい何なのでしょうか?

IoTって何のこと?

IoTとは

「Internet of Things」

の略で、
「モノのインターネット」のことです。

じゃあ
モノのインターネットって何?

という話になりますよね。

これまでのインターネットは
パソコン同士がネットワーク通信していましたが、

モノのインターネットでは
パソコンに限らず...

家電製品や機械などが
インターネットで通信することを言います。

IoTはビジネスから日常生活まで
幅広いシーンで活用することができます。

たとえば
自宅にある家電を
スマートフォンから操作したり、

自動販売機などで
在庫が少なくなったら
自動的に商品を発注したりと、

活用シーンはさまざまで、
これからもアイディア次第で
IoTの活用シーンはどんどん増えてゆきます。

IoTとLinuxの関係

IoTの普及には
Linuxが大きく役立っています。

アメリカの調査会社である
VDC Research Groupの調査によると、

家電製品などを
制御するために組み込むOSとして、
Linuxを活用する企業が増えています。

まぁ、そりゃそうですね。
一個一個の家電に有料OS入れる訳には
いきません。

Linuxの活用は
2012年には市場シェアの56.2%でしたが、

2017年には64.7%にまで
増えるであろうと予測しています。

このLinuxシェアの増加の背景には
IoTの普及があります。

IoTの急伸が、
機械に組み込むOSとして、

従来の組み込みOSから
Linuxに移行することを加速させているのです。

誰でも入手できる、
オープンソースで無償であるLinuxを、

IoTの活用において、
第一の選択肢となる企業が増えています。

個人でもできるIoT

IoTの活用は
企業でないとできないのでしょうか?

いえ、そんなことはありません。

その気になれば
個人でも少しの出費で
IoTの環境を作ることができます。

ちょっとIoTをやってみたい!

という方向けに...

「Raspberry Pi(ラズベリーパイ)」

というコンピューターが売られています。

手のひらサイズで、
5,000円もあれば買えてしまいます。

小さいけれど性能は高く、
ひと昔前のコンピューターと同じ性能です。

温度や気圧などの
さまざまなセンサーや、
カメラなどのUSB機器が接続できます。

実はこれ、
Linuxベースのコンピューターなのです。

Raspberry Piを使って
自宅のペットを監視するカメラや、

音声で自宅のドアの開閉や
照明のON/OFFを制御するなど、
IoTを活用した環境が作れます。

もちろん、
ある程度の知識は必要ですが、
興味のある方はチェックしてみてください。

Linuxはエンジニアの標準スキル

IoTは世界的に注目されており、
今後もますます広がってゆく分野です。

大手CPUメーカーであるIntelは
IoTのための標準機能の提供を予定しており、

そこに
Linuxの普及促進機関である
LinuxFoundationが全面協力しています。

IoTの世界的な普及は確実であり、
IoTにおけるLinuxの活用も確実に広がります。

ソフトウェアエンジニアでも
コンピューターの小型化によって、

Raspberry Piのような
小さなコンピューターで
動作するソフトを開発する機会は増えるでしょう。

どのようなエンジニアでも
あなたの前には必ずLinuxが存在するのです。

Linuxはこれからの時代、
エンジニアとしての標準スキルなのです。

リスキルテクノロジー
松田

PS

このIoTの活用には
以前お話ししたIPv6の技術が必要不可欠です。

数多くのモノがインターネットするので
それぞれのモノにIPアドレスが必要となります。

膨大な数のIPアドレスを管理できる
IPv6の技術があってこそIoTは実現します。

インターネットは
新しい時代に入りつつあるのです。

Linuxとネットワークの専門スクール リスキルテクノロジー

エンジニアのキャリアプランを実現するために大切なこと

From: リスキルテクノロジー 松田航
新宿本校にて、、、

エンジニアとして活躍する上で

「キャリアプラン」

...をしっかり持つことが大切です。

そして
キャリアプランは持つだけでなく、
実現させることも重要です。

今回は

「キャリアプランを実現するためのポイント」

...についてお話ししましょう。

キャリアプランを意識することが必要

入社1年はプログラマー。

入社2~3年はSE。

入社4年目以降で上級SE...。

昔の企業では
社員のキャリアプランを
企業が設定してくれていました。

なんとか仕事に
しがみついてさえいれば、

会社が敷いた
キャリアプランというレールに乗って
活躍できるという保証(?)がありました。

しかし、
今はどんな大企業でも
いつ倒産するかわからない時代です。

企業が設定したキャリアプランは
ほとんど意味がなくなっています。

また、
今の企業のほとんどは、

「自分はこうなりたい!」

...という主体的な
キャリアプランを持つ方を求めています。

エンジニアにとって
キャリアプランをしっかり意識することは、

IT業界で活躍するためには
必要な意識のひとつです。

年齢と案件

あるエンジニアの話をご紹介しましょう。

そのエンジニアは50代前半で
小さなSIerに15年以上勤めていました。

15年選手ともなると
エンジニアとしてもベテランの域に入りますが、

どういう訳か
参加できる開発案件がなくなってきました。

その理由は、

年齢とスキルがマッチしない

...ということでした。

エンジニアは
ある程度のキャリアを積むと、

上流工程のスキルや
マネジメントスキルなどが求められます。

しかしその方は、
会社から紹介された
プログラミングやテストの案件など

フェーズの限られた
短期的な開発案件にばかり参加しており、

自分が思い描いていた、

「マネジメント系のスキルを磨く」

...というキャリアプランを
実現することができなかったのです。

仕事をこなすのに精一杯で、
何もできなかったという例ですね。

そういった仕事ばかり取る会社にも
原因があるかとは思いますが、

仕事を理由に
キャリアプランを実践できなかった
エンジニアにも原因はあります。

仕事をしながら
キャリアプランを実践するのは大変ですが、

毎日少しずつでも、
キャリアプランの実現のために何かをすることで、
将来に大きな差が付くこともあるのです。

未経験から業界に入る場合

未経験から業界に入る場合にも注意が必要です。

IT業界は建設業界などと同じように、
ピラミッド構造で成り立っています。

元請け、一次請け、二次請けと仕事が
流れる構図になっているということです。

はじめに働く階層により、その後のキャリパスが大きく変わるのが
ピラミッド構造の特徴です。

「初心者歓迎」「未経験者OK」という求人はたくさんありますが、
その企業はどの階層でしょうか?

もし、成長していいエンジニアになりたいと思っているのであれば、
かつ新卒でないのであればある程度のスキルを持った上で、
入らなければパーツを作る作業を繰り返すだけになってしまいます。

キャリアプランを描くためには?

キャリアプランを
描くにあたって大切なことは、

「どんな自分になりたいのか?」

ということを強く意識することです。

エンジニアと言っても
さまざまな職種があるので
具体的なことはここでは話しませんが、

「なりたい自分」

...を意識することで
あなたの中に目的意識が生まれます。

そして次に、
なりたい自分になるために、

・今のあなたでもできること
・今のあなたではできないこと

...をリストアップしてください。

今のあなたでもできることは、
キャリアプランを実現するために
必要なものを持っているということです。

必要であれば
既に持っているスキルなどを
伸ばしてゆけるようにしましょう。

そして、
今のあなたではできないことは、
キャリアプラン実現のために必要なことです。

できないことを
できるようにするために、

どのようなことをすれば良いのか?

それを考えて実践しましょう。

既に持っているスキルは
更にスキルを伸ばせるように、

持っていないスキルについては、
どのようにすれば身に付けられるか、

常に自分を分析して、
なりたい自分になるために
必要なことを見極めることが大切です。

あなたが思い描いている
キャリアプランを実現した人がいたなら、
その人に相談してみるのもひとつの方法です。

そこから
自分では気が付かなかった
新しい視点が発見できるかも知れませんね。

学び続ける姿勢、前に進もうとする姿勢が大切

また、
キャリアプラン実現のためには、
たとえどんなに忙しくても
何かを学ぶ姿勢は忘れないようにしてください。

新人エンジニアの頃は
毎日が学びの連続で得る物も多いですが、

数年経つと
学ぼうとしなくなる
エンジニアが増えるのも事実です。

毎日数分でもかまいませんので、
目標のために進み続けることが大切です。

そして、
キャリアプランは
変更してもいいという事も覚えておいてください。

IT業界では
毎日新しい技術が生まれ、
新しい職種が次々に生まれています。

状況に応じて
なりたい自分が変わることもありますし、

最初考えていたキャリアが
数年後には需要が低いことも考えられます。

ですので、
キャリアは柔軟に考えるようにしてください。

大切なのは
学び続ける姿勢や、
前に進もうとする姿勢です。

その姿勢を持ち続けることができれば
数十年後も活躍できるエンジニアになれるのです。

リスキルテクノロジー
松田

PS

スクールで学ぶことは
キャリアプラン実現のために有効な手段です。

あなたのキャリアプランの実現をサポートします。

リスキルテクノロジーの資料請求はこちらから

膨大なIPアドレスを管理できるIPv6とは?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

ネットワークでは

「IPアドレス」

...が使用されています。

IPアドレスとは
コンピュータの住所とも言えるものですが、

このIPアドレスに変化が起きているのです。

今回は新しいIPアドレスである

「IPv6」

についてお話ししましょう。

IPアドレスが不足している?

IPアドレスは

"192.168.25.100"

というように、
0~255までの数字を
組み合わせて割り振られています。

ホームページなどのアドレスは

http://www.linuxacademy.ne.jp/

というように
文字でアドレスが指定されていますが、

実際には...

"203.174.70.235"

というIPアドレスで管理されているのです。

このIPアドレスの仕組みを

「IPv4(Internet Protocol version 4)」

と言い、
インターネット通信の規約である
プロトコルのバージョン4を意味します。

そしてこのIPv4には

「IPアドレスが不足している」

と言う問題がおこっているのです。

現在の世界人口は
70億人を超えていますが、

IPv4で割り当てることができる
IPアドレスの数は、およそ43億個です。

世界中の人に1つのIPアドレスを
割り当てることすらできなくなっています。

そして
インターネットサービスの普及などにより
IPアドレスの需要が増加しているため、

IPv4でのIPアドレス管理は
すでに限界に達しているのです。

IPアドレス不足を解消するIPv6

そこで登場したのが

「IPv6(Internet Protocol version 6)」

と呼ばれるプロトコルです。

インターネットプロトコルの
バージョンが4から6にアップしたのですが、
仕様が大幅に変更されています。

まず、IPアドレスの表現が...

"192.168.25.100"

といった4つのブロック表記から、

"2015:c900:0000:0bc1:0000:4321:1256:0000"

といった、
「:」(コロン)で分けられる
8つのブロック表記に変わりました。

これにより、
設定できるIPアドレスの組み合わせが
以下のように飛躍的に増えているのです。

[IPv4]
4,294,967,296個
(2の32乗 約43億)

[IPv6]
340,282,366,920,938,463,463,374,607,431,768,211,456個
(2の128乗 約340潤(かん))

ものすごい量に増えていますね。

IPv4で管理できるIPアドレスを
バケツ1杯の砂の数だとすると...

IPv6で管理できるIPアドレスは
太陽一個分の体積の砂になると言われています。

IPv6の登場によって
IPv4のアドレス不足問題が解消されるのです。

アドレス数だけではないIPv6の特徴とは?

IPv6にはIPアドレスの数以外にも
さまざまな特徴があります。

IPv4とIPv6の
特徴を比較した表を見てみましょう。

IPv4v6

■IPアドレス数

IPアドレス数は既にお話しした通り、
圧倒的にIPv6の方が多いです。

世界中の機器に割りあてることも
可能だと言われています。

■NAT

IPv4では
アドレス不足を解消するために

「NAT(Network Address Translater)」

という技術が使用されています。

これはIPアドレスを
一時的に書き換える技術なのですが、

IPv6ではアドレス数が多いので
NATが不要になります。

■オートコンフィグレーション

オートコンフィグレーションとは
IPアドレスを自動で設定する方法です。

IPv4ではIPアドレスの設定を
手動で行う必要がありましたが、

IPv6では
オートコンフィグレーションにより
自動的に設定されます。

■セキュリティ

IPSecとは簡単に言えば
通信を暗号化する手法です。

IPv4では
オプションで実装できますが、

IPv6では標準で実装されているので
通信内容を読み取られる危険が少なくなります。

■処理速度

送受信されるデータの
共通情報などが見直しされたことで、

ネットワーク機器の処理負担が減り、
処理速度が早くなりました。

これからのエンジニアに必須のノウハウ

IPアドレス不足問題の
救世主のようなIPv6ですが、

実際には
通信機器のIPv6対応不足や、

IPv4との互換性の問題などにより、
十分に普及しているとは言えません。

そして...

「IPv6のノウハウを知るエンジニアが少ない」

...というのも普及が遅れる理由のひとつです。

これからのネットワーク社会は
IPv6の技術が必要になってきます。

それはIPアドレス不足の問題からも
明らかなことです。

しばらくは、
IPv4とIPv6が共存する時代が続くでしょうが、
いずれはIPv6に変わる時代が来ます。

IPv6についてのノウハウは、
これからのエンジニアに必須だと言えるのです。

リスキルテクノロジー
松田

PS

IPv4からIPv6まで
ネットワークに関するノウハウを学ぶなら、
ネットワークの専門スクールリスキルテクノロジー

プロジェクトの成否を左右する工数見積りとは?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

完成している商品は
価格が設定されていますが、

システムは受注してから作ることが多く、
価格がいくらになるのか決まっていません。

しかし、それでは売りようがないので、
あらかじめ見積りしてから価格を決めます。

今日はシステム開発における
見積りについてお話ししましょう。

見積りはプロジェクトの成否を左右する

システム開発において
開発費用の見積りはとても重要です。

見積り金額が多すぎると
受注できませんし、

見積り金額が少なすぎると
受注できたとしても大変な目にあいます。

割とよくあることなのですが。。

そのため、
見積りに求められるのは正確性です。

500万円で作れると思ったものが
実際には1,000万円かかるとなると、
プロジェクトは大赤字になります。

見積りは、
「プロジェクトの成否を左右する」
...と言われのもまま理解ができます。

パッケージシステムは
価格が設定されているものが多いですが、

カスタマイズする場合には、
やはり見積りが必要になります。

社内開発でも
どれくらいの費用や期間がかかるかを
見積もったうえで開発しなければいけません。

どのような形態の開発でも
見積りという作業は必ず発生するのです。

工数の考え方と代表的な工数見積りの手法

見積りでは、

「工数」

...という単位が使用されます。

工数とは作業量を表す考え方のことで、

1人日 = 1人が1日(約8時間)で作業する量

...という意味です。

たとえば
最終的に100人/日かかる案件の場合、

100×開発単価(人件費など)+管理費+交通費など

...のようにして開発費用を算出します。

システム開発における工数見積りには
いくつかの手法があります。

代表的なものをご紹介しましょう。

■トップダウン見積り法

システム全体をまず見積り、
そこから工程別に工数を細分化してゆく方法です。

見積もる人の経験によって
正確性が大きく左右される方法ですので、
あまり経験のないエンジニアには向いていません。

■係数モデル見積り法

過去の事例などから
見積りのモデルを設定し...

そのモデルに対して
開発規模などを考慮した係数を加え、
数学的に工数を算出する方法です。

採用される見積りモデルによって、
正確性が左右されるという特徴があります。

■ボトムアップ見積り法

各工程で作成する
設計書などの成果物や作業内容を細かく分けて、
それぞれの要素に必要な工数を積み上げる方法です。

それぞれの作業は、

WBS(Work Breakdown Structure)

...という手法で細かく分けられ、
作業ごとにどれくらい工数が必要かを見るので、
比較的正確な見積りが作成できます。

この他にも
さまざまな手法がありますが、
実際には複数の手法を組み合わせて
見積りが行われるケースがほとんどです。

それでも尚外れることも多く、
いわゆる炎上というのは見積もりの甘さが
原因だったりします。

リスクを考えることも大切

見積りするにあたっては、

「リスクを考える」

...ということも大切です。

最初は簡単だと考えていたが、
実は難易度が高いということがわかり、
開発工数が増えてしまうこともあります。

このような
不測の事態に対応できるように、
リスクを考えたうえで見積もる必要があります。

あまりリスクばかり気にすると
正確性に欠けてしまうので問題ですが(笑)

難易度が高い機能の開発などは
リスクを考慮した上で見積もるのが良いでしょう。

また、
次から次へと追加仕様が増えてしまい、
予定していた工数では作れなくなることもあります。

このような追加仕様対策としては、

「大幅な仕様追加が行われる場合は再見積りする」

...という条件を付ける企業が多いです。

見積りは作る前のことですので、
依頼する側もされる側も予測できないことがあります。

予測できないことも
発生するということを踏まえた上で、
できる限り正確な見積り作りが必要なのです。

できるかぎり正確な見積りで
安全なプロジェクトを

システム開発を行う企業には
独自の見積り方法を持つ企業もあります。

複数の見積り法を組み合わせて
企業独自の視点を設けて見積りを行いますが、

それでも不確定要素などで
プロジェクトが赤字になる場合もあるのです。

見積りは航海準備に似ています。

太平洋を船で横断するのに
どれくらいの燃料、食料が必要なのかというように、

必要なリソースを予測して、
安全な航海ができるようにしなければいけません。

プロジェクトを安全に進めるには
正確な見積りが必要不可欠であることを
しっかりと覚えておいてください。

リスキルテクノロジー
松田

PS

あなたが憧れのエンジニアになったら
どんな作業にどれくらい時間がかかるのかを
覚えておくようにしてください。

最初の内は時間がかかりますが、
経験を積むにつれてスピードアップしてゆきますよね。

その作業時間の違いから
未経験者が開発に必要な工数と、
経験者が開発に必要な工数の目安がわかるのです。

あなたがプロジェクトを
管理する立場になったとき...

未経験者と経験者の
作業工数の目安がわかっていれば、
プロジェクトの計画を立てやすくなります。

javaスクールの資料請求はこちらから

システムリリース時のトラブルにはどう対処すればいい?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

システムの開発中やリリース後に
何らかのトラブルが起きることはあります。

特にリリース後であれば
本来あってはいけないことですが...

まぁ、率直にいいまして、
割と発生します。

自社のWebアプリケーションだと特にですね。
心理的にテストが甘くなるから。

トラブルが発生した場合は、
早めに問題を修正するのが重要なポイントです。

トラブルの原因を調査して解決することを
トラブルシューティングと言います。

今回はトラブルシューティング方法について
お伝えしましょう。

トラブルの原因は必ずどこかにある

システムは思った通りに
動いてくれないことがよくありますが、

作った通りにはきちんと動いてくれるものです。

作った通りに動くということは
トラブルの原因は必ずどこかにあるのです。

プログラムの例で言えば
バグの種類は大まかに分けて2種類あります。

ひとつは
エラーが発生してシステムが動かなくなるケースで、

特定の処理ができなくなったり
最悪の場合はシステム全体が止まってしまいます。

そしてもうひとつは
エラーは発生しないけど
システムが誤った結果を出してしまうケースですが、

実はこちらの方がトラブルとしては怖いのです。

例えば消費税の計算で
8%で計算しないといけないところを
5%で計算してしまっている場合、
請求書の金額やデータベースの登録内容が間違ってしまいます。

このような場合はエラーが出ないので、
バグに気付くのが遅くなってしまうのです。

プログラムでもサーバー構築でも、
テストをしっかりと行うことが大切ですが…

それでも起きてしまったトラブルは、
どうやって解決してゆくのでしょうか?

トラブルシューティングってどうやるの?

プログラムの場合は、
エラーが発生している場合は
エラーメッセージやログファイルを見ます。

これらには、どこでどのような原因で
エラーが発生したのかが詳しく記録されており、

その情報をもとに
エラーの原因を解析するのが基本です。

しかし、

エラーの発生場所と
エラーの原因を生み出している場所が
必ず同じという訳ではありません。

エラーが発生するもっと前の処理で
エラーの原因を作ってしまっている場合もあります。

その時に行うのが
「ステップ実行」という開発ツールの機能で、

プログラムを1行ずつ実行させて、
データの内容や処理結果を確認しながら実行できます。

エラーが発生しない種類のバグだと、
ステップ実行で確認しないと原因がつかめません。

サーバートラブルの場合も、
基本的にはログファイルの解析から始まります。

例えば...

Webサーバーがうまく動かない!
メールを送っても送信されていない!

...などといった場合、
Webやメールサービスのログファイルを確認します。

プログラムの場合と同じで、
ログファイルにエラー内容が書かれていますので
そこから原因を調査してゆくのが基本です。

ただし、サーバーの場合は
物理的なトラブルが原因となる場合もあります。

ハードディスクが破損したとか、
電力不足でサーバーダウンするなど、
物理的な原因も含めて調査しなければいけません。

原因不明のトラブルの場合はどうする?

プログラムや設定ファイルを見ても、

特に問題がない...

一見すると原因不明の
トラブルが発生する場合もあります。

これがしんどい。
テストをロジカルに組み立てつつ、
問題を絞り込んで行きます。

下記のようなところまで
いったとしましょう。

AさんのPCだと問題なく動くのですが、
BさんのPCだと計算結果が違うといったケース。

そのようなケースでは
ブラウザのバージョンが、
正しいものを使っているかどうか調べる。

バージョンが違っていると
動きが変わってくるケースがありえます。

ウェブアプリケーションでなければ、
OSやミドルウェア系を調べる。

他にも調査ポイントはありますが、
それでも原因不明の場合は
ベンダーにサポートを依頼して原因を究明しましょう。
(できるなら 笑)

オープンソースはそこら辺大変ですが、
コストの変わりにその部分の大変さを引き受けているので、
頑張るしかありません。

しかし、ベンダーにサポートを依頼した場合でも、
自分が探す場合でも、なかなか原因がわからないバグは、
時間がかかります。

特にリリースしている
システムのトラブルであった場合は、
早急にトラブルを解決しなければいけません。

原因がわかるまでに時間がかかる場合は、
一時的なプログラムの修正や、
代わりのサーバーを用意するなどの対策が必要です。

エンジニアの価値を高める
トラブルシューティングスキル

バグやエラーの対処方法は
エンジニアが習得しておきたいスキルのひとつ。

トラブルシューティングのスキルが
高いのと低いのでは、
エンジニアとしての価値が格段に変わってきます。

さまざまなトラブルは
開発者の作業やユーザーの業務を途中で止めてしまう、

つまり、

発生するだけで損失を与えてしまっているのです。

損失を最小限に抑え、
トラブルをできるだけ早く解決して
通常の業務を進めてもらう...

それが生産性の向上に繋がるのです。

リスキルテクノロジー
松田

PS

どんな機械でも
使っているとあちこち痛んできます。

システムでもそれは同じこと。

トラブルがない方がもちろんいいのですが、
万一の時は素早く対処できる方がいいですし、
ユーザーの信頼も失わずに済みます。

本当のエンジニアリング力が付くスクール リスキルテクノロジー

多くの開発案件を手掛けて視野を広めるSIerとは?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

IT企業の業種紹介。
前回はパッケージベンダーについてご紹介しました。

今回ご紹介するのはSIer。

SIerはITバブルと言われた
1990年~2000年頃に多数の企業が立ち上げられ、
今でも多くのシステム開発において活躍している職種です。

SIerとは一体何か?
3種類に分類されるSIerの特徴

SIerと言うのは造語で、
System Integration(SI)に
「~する人」を意味する「~er」を付けたもの。

System Integrationとは
システム構築にあたってユーザー業務の分析を行い、
システムによる課題解決から運用保守まで請け負う業務です。

ユーザー業務の分析から
運用保守まで請け負うというと
トータル的な業務を一括して請け負うように見えますが...

実際にはユーザーと直接取引しているSIerが
下請けの中小SIerに業務を発注して開発するケースがほとんど。

大小問わず多くのSIerが集まって
1つの開発案件に対応するケースがほとんどです。

SIerはさらに以下の3種類に分類されます。

(1)メーカー系

PCなどを開発している
ハードウェアメーカーから
分離独立するなどして設立されたSIer。

親会社となるメーカーの
ハードウェアと組み合わせたソリューションが強みですが...

親会社製ではないハードウェアを
ユーザーに提案しにくいといった不自由さもあります。

(2)ユーザー系

銀行、商社、流通などといった企業の
情報システム部門が独立して設立されたSIerです。

親会社のシステム開発が主な業務ですが
親会社以外の企業からも積極的に案件を受注する傾向があります。

親会社と同じ業種のシステム開発案件が強みで、
該当業種の業務に詳しいSEやコンサルタントが多いのが特徴です。

(3)独立系

特定のメーカーや親会社を持たないSIer。

メーカー系などの様に
親会社からの制約がない分、
SIerとして自由な発想による提案がしやすいのも特徴です。

ベンチャー企業に多く、
他のSIerから業務を受注して開発するケースがほとんどですが、
中堅クラスのユーザー系SIerになると直接ユーザーと取引することもあります。

SIerの業務形態とは?
契約形態によって業務場所が異なることも

SIerの開発業務は
自社内で行われるとは限りません。

開発場所がユーザー企業内といった場合は
その場所に席を借りて開発業務に携わりますし、
自社にプログラムソースなどを持ち帰って開発するケースもあります。

開発場所が自社でない場合は「常駐案件」、
自社である場合は「自社内案件」などと言いますが、
開発場所はSIerの案件契約形態によって変わります。

契約形態は大きく分けて以下の3種類です。

(a)請負契約

ユーザーや1次請け企業などから
特定の業務(製造のみ、テストのみ)または
全ての業務を請け負って開発対応を行う契約。

請負契約の場合は
自社内案件として自社での開発も可能ですが
最近はセキュリティや情報漏えいなどの問題により、
請負契約であっても常駐して開発するケースも増えています。

(b)準委託契約(SES契約)

常駐案件で主に採用される契約形態。

技術者の月あたりの稼働時間を...

「160時間~180時間の間で、180時間を超過したら別途追加料金を支払う」

...などといった契約を結びます。

つまり最低160時間働く必要があり、
180時間以内であれば定額料金となる仕組み。

180時間を超えないと
残業時間が発生しないという訳ではありません。

残業時間はあくまで自分が所属する企業の規則によります。

(c)特定労働者派遣

これも常駐案件で採用される形態ですが、
IT業界における特定労働者派遣は廃止になる可能性も。

いろいろ問題点があり、
ここでは詳しく触れませんが
2014年度の国会では派遣法改正の施行が廃案になったので、
IT業界の特定労働者派遣が廃止となるなら2015年度以降になります。

契約形態別の開発場所をまとめると、
請負案件の場合は自社に持ち帰って開発となる場合もあり、
準委託契約(SES契約)や特定労働者派遣では客先での開発になるのです。

多重な請負構造
1次請けや2次請け以降のSI業務の特徴とは?

ユーザーと直接関わる1次請け案件の場合
ユーザーの業務分析など、上流工程から開発に携われます。

そして実際の開発は
自社開発要員で行う場合もありますし、
別のSIerに発注して開発してもらうケースも。

メーカー系やユーザー系SIerには
1次請け案件が多く、自社の新入社員を鍛える為に
ベテラン技術者+新人技術者+別のSIerという開発チームが多いです。

1次請けの場合は
システムリリース後の運用保守も行いますが、
別のSIerが案件開発に多く関わりノウハウが多い場合は...

1次請けSIerは
ユーザーの窓口として運用保守を受け付け、
実際の作業は2次受けの別SIerが行うケースも。

そして、
2次請け以降のSIerの業務範囲は
1次請けSIerから受注した範囲内に限られます。

例えば...

・製造~単体テストまで
・詳細設計から結合テストまで
・運用、保守業務のみ
・製造でも、特定のサブシステムの製造~単体テストまで

...といったように、フェーズや機能単位で契約されることが多いです。

ただし、
業務やシステムに精通している技術者であれば、
1次請け企業の技術者と共にユーザー折衝するなど
上流工程から開発業務に携わることができるケースもあるのです。

また、
ユーザーから気に入られた場合は
何年もユーザー企業内で開発業務を行う技術者も。

実際にSIerに入社した技術者が
派遣先企業で何十年も開発を行っているケースも。

「自分がどこの社員かわからない」

...と、冗談交じりに話していたのを覚えています。

その技術者は、派遣先企業には
なくてはならない存在になっているのです。

柔軟性や積極性は必須!
SIerは多くの開発案件を手掛けて視野を広める

SIerの魅力は
様々な業界のシステムを手掛ける機会が多いこと。

様々なユーザーのニーズに応える為には
技術者として幅広い技術やノウハウが必要です。

見知らぬ業種の開発案件でも
積極的に業務知識を得て対応する柔軟性と...

経験のない言語を使用する案件でも
自発的に技術を習得して開発を行う積極的が必要となります。

そしてSIerはユーザーだけでなく
他社SIerと協力してシステム開発を行う機会が多いため...

自社の開発手法だけにとらわれない
様々な企業の開発手法を経験することができます。

長年SIerを経験してゆけば...

「あの案件の開発手法はよかった」

「リスクマネジメントはあの案件を参考にしよう」

「あの失敗案件と同じ問題点は発生させないように」

...と言うように、技術者として開発手法の視野が広まります。

SIerになるにあたって
ひとつ注意しておきたいのは...

「何年経っても特定のフェーズしか経験できない」

...という点です。

たとえば製造~単体テストフェーズばかり
短期間で何社も案件を繰り返していった場合、
技術者としてのモチベーションアップが難しくなります。

上流工程を経験したいのに
実際にはプログラミングだけといったケースですね。

そういった場合は、
上流工程に関連する資格試験の勉強をするなどして
自分が所属する企業や、常駐先の企業にアピールしたりして
技術者としてのモチベーションを下げない工夫をするようにしてください。

SIerは技術者という面もありますが
ユーザーや他SIerと接する機会が多いことから
あなたの姿勢そのものが営業活動になります。

実際に仕事ぶりが認められたSIerに
別の開発案件を発注するといった事も多く...

あなたがその案件の
上流工程から携わる可能性も大いにあるのです。

多くの案件を手掛け、技術者としての視野を常に広く持っていたい!

そんな方には、SIerをオススメします。

リスキルテクノロジー
松田

PS

ITエンジニアとして就職転職を目指すなら、
このスクールがおすすめです。

Linuxカーネルにはどんな役割があるの?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

「カーネル(Kernel)」

Linuxを学んでいると
必ず一度は耳にする言葉です。

カーネルとは和訳すると

「核」

という意味で、
文字通りLinuxの中心的役割を持っています。

今回はカーネルの基本について
お話ししましょう。

カーネルの役割は「橋渡し」

コンピューターには
ディスプレイやマウスなど
さまざまな機器が接続されています。

そしてコンピューターには
メールソフトやブラウザーなど、
さまざまなアプリケーションが動作しています。

アプリケーションの動作には
メモリーやハードディスクなど、
数多くの装置を動かす必要がありますが…

複数のアプリケーションが
メモリーやハードディスクなどの制御を奪い合うと
収拾がつかなくなってしまいますよね。

そこで活躍するのがカーネルです。

カーネルの役割は
アプリケーションとハードウェアが
上手に連携するための、

「橋渡し」

…をすることが役目です。

Linuxを起動した時に
カーネルはコンピューターの状態を初期化し、

アプリケーションが実行できる
環境を整えてくれます。

初期化した後は、
アプリケーションの動作にあわせて

コンピューター内部の
連携をコントロールしているのです。

カーネルを呼び出すシステムコールとは?

アプリケーションが
ハードディスクなどの
接続されている機器にアクセスするには...

「システムコール」

と呼ばれる方法が使われています。

システムコールとは
アプリケーションがカーネルに仕事を依頼することで、

コンピューターに接続されている
さまざまな機器を使えるようになるのです。

システムコールの概要

たとえば
あるアプリケーションがファイルを開いて、
ファイル内容を読み込むとしましょう。

アプリケーションからは
ハードディスクにあるファイルに
直接アクセスすることができません。

そこでアプリケーションは...

「ファイルを読み込みたい」

...とカーネルにシステムコールを行います。

すると、
カーネルはそのアプリケーションに対して

「ファイルを開いてもいいですよ」

...と、ファイルを開く権限を与えます。

このように、
カーネルから権限が与えられて初めて
アプリケーションはファイルを読み込むことができるのです。

2つの権限
特権モードと非特権モード

先ほどの例で

「カーネルがアプリケーションに権限を与える」

という内容がありましたが、
これについてもう少しお話ししましょう。

Linuxでは
カーネルとアプリケーションを正しく動作させるために、

「特権モード」と「非特権モード」

...という2つの権限を設定しています。

カーネルは特権モードの権限を持ち、
あらゆるハードウェアにアクセスすることができます。

対して、
アプリケーションは
非特権モードで動作しており、

ハードウェアに対して
直接アクセスすることができません。

カーネルが管理している領域に
アプリケーションが自由にアクセスすると、
深刻なシステムエラーが発生する可能性が高くなるためです。

アプリケーションが
ハードウェアにアクセスするためには、

システムコールをして、
カーネルに特権モードへと切り替えてもらい、
ハードウェアにアクセスすることができるのです。

カーネルを知ることでLinuxの理解度が深まる

LinuxはPCだけでなく
家電製品やスマートフォンなど
さまざまな環境で使用されています。

それぞれによって
接続されるハードウェアは違いますが、

カーネルをカスタマイズすることで
あらゆる環境でLinuxを動作させることができるのです。

また、
カーネルのパラメータを変更して
Linuxの性能をカスタマイズすることもできます。

開発エンジニアを目指すにしても、
インフラエンジニアを目指すにしても、

カーネルの仕組みを知ることで、
Linux学習の理解度がより深くなります。

今の段階では概要で構いませんので、
カーネルのイメージを掴んでおいてください。

リスキルテクノロジー
松田

PS

カーネルの
設定変更やコンパイルの方法などの
理解はサーバーエンジニアにとって必須です。

サーバーエンジニアになるための専門校

エンジニアに営業スキルは必要?

From: リスキルテクノロジー 松田航
新宿本校にて、、、

「営業力」

エンジニアとは
関係のなさそうなこのスキルですが、

実は
エンジニアにとって
重要な意味を持っているのです。

どうしてエンジニアに
営業スキルが必要なのでしょうか?

ひとつの仕事が新しい仕事を生む

先日、
ある老夫婦の話を聞きました。

その老夫婦は
銀行で定期預金をしていたのですが、

銀行の営業マンの話を
楽しそうに話すのが印象的でした。

最初は自分たちの
定期預金だけだったのですが、

あるとき、
子供が他の銀行で借りている
住宅ローンの返済計画が適切がどうか調べ、

減額できる可能性を指摘したところ
住宅ローンの減額に成功したそうです。

老夫婦は
営業マンの対応の良さを気に入って、

自分の子供たちに
営業マンの銀行のローンなどを紹介して
多くの契約にまで至ったそうです。

自分たちのことを
考えて行動してくれている。

この姿勢が
老夫婦が営業マンを気に入った理由でした。

この営業マンの例では
ユーザーに対する対応の仕方によって

小さな定期預金だけの取引から、
ローンなどの他の契約につながっています。

仕事は単発ではなく
アプローチの方法によっては、

「ひとつの仕事が新しい仕事を生む」

...という特徴があるのです。

エンジニアにも営業力は必要

ひとつの仕事から
別の仕事に繋がるケースは
営業系の職種だけの話ではありません。

例えば、
SIerはユーザー企業での
システム開発業務が多いですが、

中小SIerの場合は
短期間の案件が非常に多いのが現状です。

その案件が終わると
次の案件があるとも限りませんので

次の案件につながるように
ユーザーに対して営業するケースもあります。

また、
開発案件を持ち帰って
自社内で開発を行おうとするSIerは多いです。

売上額が大きいのはもちろんですが...

自社内であれば
開発要員の計画を立てやすいですし

新人教育の一環として
新人を開発に参加させることもできます。

しかし、
その為に必要なのは
ユーザーとの信頼関係です。

信頼関係がなければ
案件を持ち帰らせて開発させてくれません。

そのためには
最高のパフォーマンスで開発にのぞみ、

銀行マンの例のように
顧客のためになる対応を心がけることが大切です。

営業は目に見えない効果も生む

営業力が必要なのは
SIerだけではありません。

自社で開発をしているエンジニアにも
必要なスキルだといえます。

例えば
パッケージベンダーなどですが、

いくら技術力だけを高めて
素晴らしいシステムを作ったとしても、

対応に問題があると
それだけの関係で終わってしまいます。

よくあるのは
アフターフォローでのトラブルです。

システムを納品して
清算を済ませてしまったら

対応の仕方が変わったという例は、
今でもかなり多くのユーザーから聞きます。

それきりの関係で終わらせないように、
信頼関係を深めるアフターフォローが必要です。

社内システム開発でも同じです。

社内向けの開発だから
営業スキルは必要ないのでは?

と思うかも知れませんが、

「売上」

という数値に表れないだけで、

社内での信頼関係や
部署間の連携を良くするなど

目に見えない効果はたくさんあります。

社内外を問わず
システムを利用する人はすべてユーザーなのです。

ユーザーを大切なパートナーと考えよう

基本的にビジネスは
ユーザーがいないと成立しないものです。

ユーザーがいるということは、
必ずコミュニケーションが発生します。

どれだけ優れた技術があっても
コミュニケーションの質が低ければ

「今後も付き合ってゆきたいエンジニア」

...とは思ってくれません。

「営業」

と考えてしまうから
敬遠してしまうエンジニアもいるのも確かです。

まずは、ユーザーのことを...

「大切なパートナー」

と考えることから始めましょう。

あなたが開発したシステムを利用する人は
あなたの大切なパートナーです。

そのパートナーのために...

・どれだけ質の良い対応ができるか?
・相手の目線で考えることができるか?
・どうすれば一緒に課題を解決できるか?

...ということを心がけて接してみましょう。

たったそれだけで
あなたとパートナーとの信頼関係は

今よりも大きく育まれることでしょう。

リスキルテクノロジー
松田

PS

パートナーの喜びは嬉しいものです。

当校にとってのパートナーは
これからエンジニアになろうとするあなたです。

あなたの一歩を
万全のサポート体制で応援します。

プログラマーになるスクール

未経験からの育成制度も充実
IT講師に興味はありませんか?

リスキルテクノロジーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する