Web系のエンジニアの一日 ~IT系の仕事を全く分からない人がプログラミング出来るまで ~
初めに
新幹線で暇なので、書けるときに書いてみようと思います。
前回はIT業界全体の話でしたが、今回はWeb業界の実際の一日にフォーカスして業務のイメージを持ってもらえれば嬉しいです。
みんなが抱いているエンジニアのイメージについて
ところで、IT業界に働いてる人って以下の写真のようなイメージはありませんか?
なんか、メガネかけたやつがピザ食いながら、暗闇でパソコン、イジってるやつみたいな。笑
自分も何故かエンジニアには、このイメージがありました。
実際に働いてみた結果。。
一言、言わせて
こんな暗闇で一人でピザ食いながら業務しねーよwww
アニメか映画の影響でしょうか?
ギークのイメージは、ほんまにこんな感じで一匹狼を演出されてることが多いですけど。
基本チームで業務します。あとめっちゃコミュニケーションが必要です。
世間が抱いてるイメージ(まだこんなイメージ抱いて人おるか微妙?)から、かなりギャップがあると思いますので、次で具体的な業務のイメージを持ってもらえればと思います。
業務の流れ
自分の会社の業務の流れは基本以下になります。
1.偉い人から案件が降ってくる
基本、会社が持ってるシステムは解決しなければいけない問題が山積みです。大前提としてシステムが構築された瞬間から産業廃棄物になるため、定期的なメンテナンスと更新が必須です。新たな技術がとてつもないスピードで生まれ続けるため、この世にシステムが誕生した瞬間から時代に置いていかれてるのです。厳しいがこれが現実、常に技術的負債と向き合っていく必要があります。
この普遍的原則のため、案件はつきません。そのため偉い人は、優先順位をつけて案件を振り分けいく必要があります。
自分発信の案件もありますが、基本偉い人から振り分けられた案件に関して、僕たちエンジニアは技術を使って解決していきます。
2.課題解決に向けて仕様を決める
上記の案件に関して、どうやったらメンテナンスも少なく、工数をかけず課題解決をするか仕様を策定します。
仕様とは、どんな方法を使って課題解決を行うか方針を決めることです。
正直、仕様策定が一番大事で腕の見せ所だと思います。
仕様に問題があると、某ペイみたいな大変なことが起きます。エンジニアは持てる知識を総動員して穴がない仕様を考えなければなりません。そのため、ミーティングによる相談は欠かせません。
3.仕様に沿って開発を行う
やっとプログラミング開始のフェーズになります。ここまで来れば70パーセント完成に近い。笑
仕様が命!
仕様がしっかり決まっていれば、やるべきことが明確のためプログラミングがしやすいです。
具体的なプログラミングの方法は次回からしましょう。
ただ、開発していくにつれ、仕様の考慮漏れが発生してしまう場合があります。
ここってこれでいいんだっけ?って思った瞬間にすぐにチームのみんなに相談しましょう。
4.完成したものを世にリリース
完成したコードをサーバー上に更新することをリリースと呼んでます。
リリースした瞬間に、全世界の人々に向けてサービスが更新されます。当たり前のようですが、めっちゃ凄いことだと思います。
リリース方法は自動化が基本です。
何百台ものサーバーを手で更新できないので、自動リリースする仕組みを組んでます。
個人でもリリースの自動化を詳しく知ってる人はとても重宝されます。
短期間でリリースの回数が多いほどサービスが進化する回数が多いとイコールなので、リリースの手間を減らすことはとても大事です。
5.リリース後の結果を見る
単にリリースしただけでは案件は終わりません。ネットの武器、数値がダイレクトに記録されることを利用して案件の結果を調査します。俗に言う、KPIを追いかけます。
どれだけサービスがお客様に利用されているか測る数値はいっぱいあります。
例えば、インプレッション、PV、UU、UA、UB、DAU、WAU、MAU、CVなど
KPIに関する用語はいずれまとめます!
上記のKPIを追いかけるときに使う用語は覚えると、都会のイキったやつの会話に入れます笑
困ったら お宅のサービスのDAUはいくつ?と聞いちゃいましょう。
まとめ
ここまで実際の業務の流れをまとめてみました。プログラミング業務についての具体的な中身は割愛しましたが、上記の流れをひたすら繰り返しサービスの磨き込みをしてます。
自分たちで考えた仕様に基づいたサービスがリリースされ、数値化されて結果がわかることはとてもワクワクします。
次回は!
次回からいよいよ、Webの仕組みを自分なりにまとめようと思います。
この記事が気に入ったらサポートをしてみませんか?