「データベース設計できます?」じゃレベルが分からない件
ACWEB木村です!久々になってしまいました、、、涙
楽しみにしていただいている声もいただけるようになったので、
タイピングスピードを5倍にして対応していきたいと思います!
本日はサーバーサイドエンジニアさんなら面談で80%聞かれるDB(デービーって略します)について詳しく深ぼっていきますので、ある程度わかる方はレベル分けだけでも見ていただければ今後の参考になるかと存じます!
■(基礎編)DB関連の仕事について
そもそもデータベースとは、
サービスに使われる情報を貯めておく場所
です。
細かくいうといっぱいありますが、イメージは
ユーザー情報:ログイン情報とか閲覧/購買履歴
サービス情報:料金プランや予約状況、商品の説明など
そんな情報が
・テーブル・・・情報ごとに管理する場所を変える
・カラム・・・テーブルの中の情報そのもの
ってので分けられて管理されてるんですね。
で、その情報を表示したり更新したりする時に使う言語が
SQL(エスキューエル)
ですね!
SQLで覚えておくといい内容はこのくらいっす。
前振りはここまで、続いてDBのお仕事で3つの工程に分かれます。
①設計
データベースを作る時にどんなデータをどう保存したらいいんだろって考えながら実際に構築する導入の部分まで対応します。
②構築
実際にまとまったものを作りあげていくことになります。以上。
③チューニング
新しいコンテンツ(情報)がある場合に追加したり、既存のDBを改良していく運用フェーズで使われる言葉です。
■レベル分け
(ここからちょっと難しくなります。汗)
レベル感が分かれるのは
【設計 or チューニング】
で決まります。つまり
構築フェーズの有無は気にしない。
①できる人
②出来そうだけど多分出来ない人
③出来ない人
構築のみ
■最後に
ご覧いただいたように開発とは違い構築というキーワードはDBの中では全然重要じゃないんです。
気をつけなきゃいけないのはいかに【①と②の人なのかを見極める】こと。
「レベル分けの部分の経験ありますか?」って聞けば良いだけです〜!
ただ、①の部分の経験をしていてもサービスが簡易的なものだとSESで人材募集するようなクライアントには通用しない可能性もございますのでご注意を。
よくテーブル数は?カラム数は?という質問もありますが、ちゃんとしたサービスなのかな?ってことを流れで聞かれることはあります。
闇雲に多い/少ないでは出来るかどうかは判断できないので一問一答しか出来ないのであればヒアリングしない方が無難でしょう。
(サービスとかクライアント聞けば結構イメージ出来ることなので)
今回お話できなかったNoSQLやDWHについてはまた別の機会に投稿いたします!
最後までお付き合いありがとうございました〜!
この記事が気に入ったらサポートをしてみませんか?