エンジニアの副業は週1からでも可能?副業の例や探し方も解説
- ITエンジニア
- 副業
「簡潔に説明できない。それは、あなた自身が十分に理解していないということです」
これはアルバート・アインシュタインの言葉。耳が痛いですね。
私が駆け出しのUXデザイナーだったころ、知識不足や語彙力のなさが原因でミーティングの内容が全然理解できなかったり、上司の司令に右往左往したりと大変苦労しました。
そして、意味がわからなかった単語は誰にも気づかれないようにこっそりGoogleで検索していました。
今も、たくさんの新人デザイナーが同じような問題を抱えているのではないでしょうか。
本記事では、最低限覚えておきたい技術用語を紹介していきたいと思います。
A/Bテストはオンラインコンテンツ設計に関わるテスト。異なる2バージョンの製品を引き合いに、どちらがよりユーザーに評価されるか試すものです。
アジャイルはソフトウェア開発の手法で、段階的な複数の異なる開発手法によって成り立っています。コードをシンプルに保ち、頻繁にテストし、準備が整うとすぐにアプリケーションの機能部分を提供することに重点を置いています。
AndroidはGoogleによって開発されたモバイル向けのOSで、多くのスマートフォンやタブレットにインストールされています。
アプリケーションプログラミングインターフェース(Application Programming Interface)の略称です。APIとはコンピュータとWebアプリケーションがお互いに情報をやりとりする方法です。
たとえば、あるアプリはweather.comのAPIにメッセージを送ることで、シドニーの現在の天気を表示します。weather.comのAPIは構造化されたレスポンスを返却します。
テストの自動化とは、QA(Quality Assurance)が自動化ツールを使用して、ソフトウェアアプリケーションのテストを行うことを指します。
アバターは人間やアイデアを具現化したも。コンピュータの世界では、アバターはオンラインユーザーの分身となります。主にゲームやオンラインコミュニケーションで使用されます。
バックエンドはWebサイトやソフトウェアなどのITシステムのコアの部分で、バックエンドの開発者は、サイトやその核となる機能を開発します。
フロントエンドは今あなたが見ているもので、クリックしたり、スクロールしたりしているものです。
バックログは仕事が完成するまでの履歴を保存するもので、アジャイル製品のバックログは優先順位をつけてリスト化することが特徴です。以下の記事に詳しい解説があるのでのぞいてみてください。
ビーコンとはモバイルアプリケーションが位置情報を細かいレベルで伝達、認識する技術です。ユーザーに、位置情報に基づいた情報を表示できます。この技術は基本的にBluetoothを使用します。
開発ブランチを利用して、作業中のコードと完了済みのコードを別々にします。ソフトウェアの一部を分割することで並行して開発することができます。
より詳細な情報は以下の記事をご覧ください。
二次的なタイプのナビゲーションで、Webサイトやアプリでユーザーの現在地を知らせてくれるものです。パンくずリストとは、「はじめの地点に戻るための道しるべ」というのがもともとの意味です。
ジャコブ・ギューブの記事で詳しく説明されています
ソフトウェアのバグはプログラムに生じる問題で、ソフトウェアをクラッシュさせます。ほとんどのバグはヒューマンエラーによるものです。
キャッシュはコンピュータに一時的に何かを置いておくところを指します。たとえば、ユーザー名はコンピュータのキャッシュに置いておくことで、次回ログインするときに自動で表示してくれます。
チャットボットはチャットインターフェースを通じて対話するサービスです。コンピュータが相手だということを除けば、友達と話しているような感じになります。
より詳しい説明は以下の記事をクリック。
CMSはコンテンツマネージメントシステム (Content Management System)の頭文字をとったもので、デジタルコンテンツを作成したり、管理したりするアプリケーションです。
CRMは顧客関係管理 (Customer Relationship Management)の頭文字をとったものです。顧客の名前や住所などの連絡情報を保存するソフトウェアです。
おすすめのCRMはSalesforceです。そのブログにも、興味深い記事がありました。
この言葉を説明するのに、ジェイク・ボクサー氏があげた良い例をご紹介します。
「プラモデルの組立てを想像してください。区切りの良いタイミングで写真を撮り貯めておくことで、飛行機が完成したときにそれまでの段階を見返すことができます。ソフトウェアのプロジェクトがプラモデルで、プラモデルの写真がコミットです」
CSSはカスケーディングスタイルシート(Cascading Style Sheets)の頭文字で、HTML要素がどのように画面に配置されるかを設定するものです。
HTMLは構造体、CSSはスタイル、Javascriptは動作を設定します。
Dev Opsはアジァイル開発をとおして、迅速な技術提供に主眼をおいたもの。人と文化に焦点をあてており、運用チームと開発チームの連携を改善させることを目指しています。
トレンドや市場・ユーザーの動向をデータから考察して解き明かす学問です。データサイエンスにより、ビジネスのアイデアが明確になり、戦略的な選択ができるようになります。
気持ちや感情を伝えるために顔の表情を文字で表現したものです。
フロントエンドの開発者はアプリやWebサイトのビジュアル部分であるユーザーに表示される項目や機能を作成します。
GitHubは開発者によって使われているWebベースのサービスです。
コードを複数人で協力して開発するときによく使われます。
GIFはGraphics Interchange Format(グラフィックインターチャージフォーマット)の頭文字をとったもので、エンドレスでループするイメージやビデオクリップのことです。
ハックは手っ取り早い問題解決、解決策を指す言葉です。
「デジタルチームの日」という意味。開発に関わる人たちがイノベーションのアイデアを持ちよります。ハックデーの目的はクリエイティビティーを奨励して、人々の交流を促してともに考えるきっかけを与えることです。
HTMLはHyper Text Markup Language(ハイパーテクストマークアップランゲージ)の頭文字をとったもので、Webに表示するためにコードが書かれたファイルです。
コードはWebブラウザにどのように表示するか、どのように画像を表示するかということを設定します。
HTMLは構造体、CSSはスタイル、Javascriptは動作を設定します。
ハイブリッドアプリはネイティブアプリ、Webアプリの両方を組み合わせたものです。
Internet Protocol address(インターネットプロトコルアドレス)のことで、インターネット上、あるいはローカルネットワークでデバイスを認識するユニークなアドレスとなります。
モバイル向けのOSで、Appleによって制作・開発されたものです。
iPhone、iPad、iPodのOSに使われています。
繰り返し開発はソフトウェアを小さく分割して開発する手法で、一般的にアジャイル開発では、1〜4週間で開発できる規模を指します。
Javascriptはプログラミング言語の1つで、Webページに動的なアクションを設定することができます。
HTMLは構造体、CSSはスタイル、Javascriptは動作を設定します。
モバイルWebはスマートフォンからのインターネットのアクセスを指します。
モデムは電話や電話線を使ってコンピュータのデータ送受信に使うデバイスです。
MVPはMinimal Viable Product(ミニマルビジブルプロダクト)の略で、ユーザーの求める機能を備えた新しい製品を開発する手法です。初期ユーザーのフィードバックから、さらなる機能を追加で開発します。
NFCはNear Field Communication(ニアーフィールドコミュニケーション)の頭文字をとったものです。他のデバイスからモバイルデバイスにワイヤレスでデータを送受信する方法です。代表的なのは、Apple Payのようなタップして支払うサービスです。
オープンソースソフトウェアは誰でも使えるソフトウェアです。
ペアプログラミングは2人のプログラマーが同時に作業することを指します。1人がコードを書き、もう1人がレビューを行うという作業方法です。2人のプログラマの役割は、頻繁に切り替えます。
開発者がGitHubにプッシュされたコードを変更したいと他の開発者に伝えることです。
これは現在動いているコードを変更することなく、そのプロセスをより最適化させるものです。たとえば、コードの可読性を高めたり、コードの構造を単純化したりします。
レスポンシブデザインとは、ユーザーが閲覧しているデバイスの画面にあわせてWebサイトが適切に変化するデザインのことです。
ソフトウェア開発でのレトロとは、反復型開発を振り返ることで、次の繰り返し処理のプロセスを向上させることです。
インターネットを通じてアプリケーションを提供する方法で、ソフトウェアのインストールやメンテナンスなどの必要がなく、インターネット経由で利用することができます。
SAASの最大のメリットは複雑なソフトウェアやハードウェアの管理から解放されることです。
スクラムは繰り返し処理の手法とアジャイルソフトウェア開発のフレームワークを用いた開発方法です。
これはソフトウェア開発キット(Software Development Kit)の略です。
SDKは特定デバイスのアプリやOSの開発のために使われるソフトウェアです。
これは検索エンジン最適化(search engine optimization)の略です。
Webサイトを検索エンジンに向けて最適化することで、閲覧者を集めるプロセスのことです。
Slackはチームのコミュニケーションに便利なツールです。グループメッセージ、個人チャット、画像の共有などコミュニケーションに必要な機能が揃っています。
スプリントとは、アジャイルソフトウェア開発において作業が終わるまでの期間のこと。一般的には、1〜3週間程度です。
スパイクとは、お試し版(プロトタイプ)を開発するまで推測できない作業のこと。スパイクを考慮することで、結果として作業時間を正しく見積もることが可能です。
システムに加えなければならないいくつかの機能があるとき、2つの方法をとることができます。
1つはとりあえず、手あたり次第に対応することです。コードがぐちゃぐちゃになる可能性があるのでおすすめしません。行き当たりばっかりな設計が生み出す結果を技術的負債といいます。
ユニットテストはアプリケーションの機能ごとにテストすることです。手動でもできますが、自動化されることが多いです。
Virtual Private Network(仮想プライベートネットワーク)の略です。
VPNはインターネット経由で他のネットワークに安全に接続する方法のことです。
ウォーターフォール型の開発では、次のフェーズに進む前に、それより前のフェーズのタスクを完了させる必要があります。
アジャイルとは別の段階的なソフトウェア開発のテクニックです。
スコットランドの哲学者であるトーマス・リードは「言葉の曖昧さほど深い理解の妨げになるものはない」という言葉を残しています。より良い仕事をするためにも、知識に貪欲なデザイナーを目指しましょう。
(翻訳:Kazunari Mino)