送信が完了するまでしばらくお待ち下さい。
送信を完了できない場合は、
以下のEメール/LINEまたは
担当カウンセラーにお知らせください。
Eメール:q1@canadajournal.com
LINE ID:@canadajournal
最近、日本でIT関係のエンジニア(Engineer)をしていましたと言う人の声をよく聴きます。ですが、そういう方がカナダに来て、同じ業務で働いていると、デベロッパー(Developer、開発者)という肩書きになっていたことがよくあります。
では、エンジニアと開発者との間にはどんなちがいがあるのか?単に名前だけのなのか?
ここでは、IT関連のなかでも、モバイル・ウェブアプリケーション関わり有りがある分野の、ソフトウェアエンジニア、ソフトウェア開発者について、解説していきます。(ソフトウェアは、モバイルアプリ、ウェブアプリも含みます)
実は、仕事でエンジニアの肩書きを持つのと、ディベロッパーの肩書きを持つのでは大きな違いがあるのです。
ほんと『超えられない壁的な存在』です。
まず、工学的な概念を用いてソフトウェアを開発してくソフトウェア工学(エンジニアリング)があります。
ソフトウェアエンジニアは、依頼人の要望を適用可能な技術的解決方法とつなげることで、ソフトウェア開発の関わってきます。そのため、特定の機能を提供するための工程をシステム的に開発していきます。
ですが、これだけじゃありません。法律的な要件もあります。
弊社があるBC州ではソフトウェアエンジニアと名乗るには、以下の要件を満たす必要があります。
前述の条件にさらに下記の条件が必要となります。
これらの条件を満たし、さらにEnginieers And Geoscientstis BCというBC州の協会から、認可もしくは会員に加入しないといけません。
そうなんです。エンジニアという肩書きは、資格がないと名乗れないのです。
もし、そういう資格も無し・認可無しに『エンジニア』を名乗ったりしますと、BC州の法律によって、Engineers and Geoscientists BCから訴えられます。最大 25,000 ドルの損害賠償金を同協会に支払わなければなりません。
オンタリオ州も同様の法律を定めています。
ソフトウェアエンジニアとは、複雑なシステムを管理ができる、すごく能力の高いソフトウェア開発者のことをさします。完全に機能するアプリを構築できるだけでなく、リファクタリングがしやすく、自己文書化がしやすく、結果的にデバッグがしやすい方法で構築する方法を知っている経験豊富な人です。
様々なプロジェクトのリーダー、コンサルタント、個人の貢献者として活躍していくでしょう。依頼人と会社の戦略的な目標のために、新しいIT特別機能を実装する際に、分析的なアドバイスを提供しなければなりません。リソースを管理し、開発タスクを調整し、技術的なプロジェクト計画を監督することも必要スキルとなるでしょう。ソフトウェア開発のライフサイクルを通して、IT、オペレーション、開発スタッフとの共同作業が頻繁に行われます。
一方、ソフトウェア開発者は、エンジニアと違って、前述な法律的な用件はまったくありません。プログラミング言語を扱えて、ソフトウェア開発に携わっていれば、開発者です。ほぼプログラマーです。
ソフトウェア開発者は、しばしばコンピュータ会社やメーカーで働きます。主な役割は、コンピュータプログラマーが動作する上で動作するシステムのための基盤を作成することです。設計、書き込み、および効率性を確保するために、新しいシステムやソフトウェアのためのテストコードを作成したりします。ソフトウェア開発者はまた、有効性を証明するためにそれらを起動する前に、既存のプロジェクトの診断プログラムと品質保証テストも行います。
ソフトウェア開発者は、新しいシステムの作成と設計に関連するすべてのプロセスに関与しています。
初期計画からパラメータの確立、設計、書き込み、コーディング、暗号化、テストまで。このプロセスは通常、ソフトウェア開発者のチームによって行われ、各メンバーがプロセスの特定のステップを実行し、スーパーバイザーがプロジェクト全体を監督します。
ソフトウェア開発者の仕事は、データベース管理者の仕事と重複することもあります。多くのシステムは、データ管理システムと何らかの形で相互作用しなければならないので、両方のシステムが互換性を持っていることを確認するのは、ソフトウェア開発者の責任です。ソフトウェア開発者の中には、データ管理システムやソフトウェアに関する十分な知識を持っていれば、自分でこれを行うことができる人もいます。
ソフトウェア開発者は、多くの場合、いくつかのプログラミング言語を使用し、彼らの仕事は非常に複雑であり、それはコンピュータ科学と数学の高度な知識が含まれます。彼らのフィールドは常に進化しており、新しい技術や進歩は毎日行われているので、彼らは学習と自己改善の一定の状態でなければなりません。
色々な英語の記事をいくつかピックアップし、DeepLを多用して、エンジニアと開発者の違いをまとめ上げてみました。
述べているとおり、同じソフトウェアを開発にあたり、エンジニアと開発者の間には大きく別れています。カナダ国内では、法律的な面も大きな要因があります。
なぜ多くの日本のソフトウェア、コンピューターエンジニアがカナダで開発者となっているか、ざっくりと言いますと、その人達は、カナダでは『エンジニア』と名乗れない可能性が高いからです。エンジニアというタイトルを得るには、かなりの高度の学歴とスキル、経験を要します。それだけ、エンジニアという地位がカナダでは、弁護士、会計士なみに守られているという証です。
また、法律的な解釈さておき、広義にかんしては、オンライン学習講座を提供している教育プラットフォーム『Udacity』ではこう述べられています。
“ソフトウェア開発者とソフトウェアエンジニアという用語は、一般的に信じられていることとは逆に、交換可能なものではありません。開発者は、コードを書く方法を知っていて、意味のある製品を構築するために必要な技術的なスキルを持っているかもしれません。ソフトウェアエンジニアは、要件を理解し、利害関係者と協力し、彼らのニーズを満たすソリューションを開発するという体系的なプロセスに従います。開発者は一人で仕事をする傾向があります。ソフトウェアエンジニアは、より大きなチームの一員である”
Software ‘Developer’ or ‘Engineer’: What’s the Difference? – ShecanCode
私的な解釈では、エンジニアは、システム・プログラム言語の深い所を追求して、学術的な面、まるでプログラミング言語を作り直してソフトウェア開発に携わっていく、開発者は既存のシステム/プログラム言語を専門知識を創造的に利用して、ソフトウェア開発に携わっていいく、感じでしょうか?
両者ともカナダでは非常に求められている人材の1つであり、移民の近道ともなる職種です。
カナダでソフトウェアエンジニアを1から目指すのであれば、学校4年、実務経験4年、計8年くらいの期間を考慮しないと行けませんが、ソフトウェア開発者のほうは学校の期間も1年から2年と短く、早い段階で職に就ける可能性が高いです。
どちらにしろ、両方とも高度なスキルと経験が必要とされる面が多く、創造力が求められています。
あなたなら、まずどちらを目指しますか?
参考
LINE上で、お問い合わせ、無料相談も承っております。
下のQRコードからお友だち追加後、チャットで声をかけてください。
上ボタンをクリック、もしくは『@canadajournal』(@マークも含めて)でID検索をしてお友だち追加してください。
担当者がログイン後、お応えします。