エンジニアに必要なプログラム言語以外のこと。

  • このエントリーをはてなブックマークに追加

当社の社内で運営している自社サービスや受託制作を一緒に進めていただきたく、Webエンジニアの募集を開始しました。

今回の募集も、新卒、プログラム実務未経験者を優遇しています。

待遇面などはFindJob!をご覧ください。
https://www.find-job.net/list/j102737.html


当社では積極的に新卒や未経験者を採用しています。
何故かというと、自分のやり方などを持っていない状態で入社していただき、当社のモノづくりの姿勢である「工夫して作ること」を吸収していただきたいという想いからです。

プログラムの知識より、どうやったら出来るかと考えられる力を当社では重要視します。
きちんと考えられる力がある未経験者が、経験者が解決できない問題を解決してしまうようなことだってあると思っています。

プログラムの関数を多く知っている、フレームワークとかテンプレートエンジンを使える、というだけが優れたエンジニアではありません。

そこで、今回はこれからエンジニアになりたい、という方のためにプログラム以外で大切なことを書いてみます。

あくまで当社の考え方ですので、参考までに。

 

シナリオを組み立てる力。

プログラム言語はあくまでも構文なので、覚えてしまえばそれまでです。
もちろん言語で用意されている便利な関数などもありますので、知識の量はあるのに越したことはありません。

しかし、実際に作るという面から見ていくとシナリオを考えられる力が一番大切です。

例えば、問合わせフォームを開発するとしましょう。
このフォームで入力された際に、こういうミスをされると困るな、こういうことをする人もいるだろうから、その場合の対処をしておかないといけないな、といった具合に、フォームと入力する人の操作パターンをまずはシナリオ化出来ないとプログラムは書けません。

一旦シナリオが組みあがれば、後はifとかforとかで後は何とかなります。


よくプログラムを勉強し始めの方の中に、いきなりフレームワークとかテンプレートエンジンなんかを使って作ろうとする方を見かけますが、まずは自分自身できちんとシナリオを作ってまっさらからコーディングすることをお勧めします。
ネットを探すと沢山の情報が出てきますが、上級者の方が書かれているブログなども多く、よく分からないで流用していると、仕様変更やバグに対応出来なくなってしまうような場合もあります。

シナリオを考えるだけなら通勤中歩いている時でもいくらでも考えられます。
私もよく歩いている時にロジックを考えたりするのですが、意外とPCの前にいる時より考え付くことが多いです。

シナリオを組み立てる練習はどこでも出来ます。
ノートPCがなくても紙と鉛筆があれば喫茶店でも図書館でも出来ちゃいます。
macbook airとか持ち歩かなくても大丈夫です。

あのサービスを自分が作るなら、という前提で考えたりするとトレーニングになりますよ。

 

とにかく身の回りでちょっと便利な何か作ってみる。

会社の実務の中で経験させてもらいつつ、教えて貰いながら勉強する、という姿勢だと多分ダメだと思います。
もちろん教えてくれる人がいれば聞いた方が早いので

会社に依ってはべったりくっついで教えて貰えるようなところもあると思いますが、少人数の制作会社などでは多分期待できないでしょう。
(制作会社によって新卒を採用出来ないのは教育体制を整えるのが難しいというのが本音だと思います)

では、どうすれば良いのか。
個人でガンガン作っていくしかありません。

例えば会社のちょっと空いた時間に自分用に業務カレンダーを作ってみるとか、日報を書くのが面倒であれば、業務日報生成ツールみたいなものを作ってみるとか、自分の身の回りのツールでも何でも良いので自発的に作ってみることです。

空いた時間にちょこちょこと自分の便利ツールを作るエンジニアの方は多いです。
私も自分のために、エクセル管理していた売上管理をシステム化しました。
自分のために作るのは仕様という縛りもありませんし、自分の好きなように作れますので、結構楽しいものです。

課題がないとなかなか自分で勉強出来ない、という方は笑っちゃうくらい簡単なものでも作ってみてください。
自分の体重管理とかなんでも良いと思います。

 

ちょっと我慢して最後まで自分で完成させる。

最初は出来なくても、ちょっと頑張って投げ出さないで完成させる、というのはプログラムのみならずモノづくりには一番大切なことです。

ロジックで煮詰まって、どうしたら良いか分からなくなってしまうことは誰にでもあります。
エンジニアとして一線で働いている方はほとんどそういったことを乗り越えて今に至っています。

分からないから投げ出してしまうのではなく、ちょっと我慢して取りあえず完成させる、という忍耐力は必須です。
誰でもすぐに業務レベルでプログラムを組めるわけではありません。

精神論になってしまいますが、制作の仕事をしたいのであれば、最後までやり通す力がないと難しいと思います。

 

テストをすることで仕様を学ぶ。

社内で作ったシステムなどのテストをやらされると、下積みみたいなイメージで嫌がる方もいますが、テストにこそ学ぶべきことは多く詰まっています。

まず、テストをするうえで何が正しいのか、どういうことを想定しないといけないのか、仕様を理解している必要があります。
セキュリティー関連のテストをする場合、こういうチェックを自分が作るときにプログラムに反映しておかないといけないのか、などなど自分が作る場合に参考になるようなことが詰まっています。

また、他人のバグを見ていると、こういうミスが大きな動作の障害になるんだ、自分も気を付けなければ、と反面教師にもなります。
沢山のテスト項目を消化すると流れ作業のようになってきますが、自分が作るということを意識してテストすると勉強になることが沢山あります。

 

===

 

当社で経験出来ること。

色々ブログに考え方みたいなことを書くと、厳しそうとか上から目線のように思われがちですが、実際にはそんなことはありません。
やる気のある方であれば業務も踏まえて学んでいただく環境です。

当社では社内サービスと受託制作を並行しておりますので、Webサービス作りとクライアントの要望に応える受託制作の両方を経験できます。
企業のキャンペーン企画など自分が携わった!と自慢できるような案件にも積極的に参加していただきます。

すぐに誰でも器用に出来るとは思っていません。
これからエンジニアになりたい、という気持ちの強い方にはきちんと教えますので、興味がある方は是非ご応募ください!

https://www.find-job.net/list/j102737.html

執筆者:高本

株式会社8bit 取締役の高本です。 社内のWebサービス企画、プログラミングや、売上・請求管理にいたるまで幅広く担当しております。

関連記事

プログラミング

【PHP】ソーシャルログインに対応したお話(LINEログイン編) ②

前回はLINE Developersでチャネル登録までを行いました。 今回は実際にPHPでログインを実装していきます。 目次1 初期設定を定数にする2 LINE ログインのURLを作成する3 コールバック時の処理4 最後に 初期設定を定数にする 最初にdefineでチャネル登録した情報やAPIのURLを定義します。 メールアドレスを取得したい場合はLINE_SCOPEに「email」を追記してください。 LINE ログインのURLを作成する LINEログインに利用するログイン […]

Webサービス

【PHP】ソーシャルログインに対応したお話(LINEログイン編) ①

今回はLINEログインです。 LINEログインは他のソーシャルログインと違って、電話番号必須なので、ユーザーがアカウントを無限に発行するということがなく、しかもOSに関係なくアカウントを使用できるので、特にB2Cサービスを考える場合には是非導入を進めたいと思います。 逆に法人サービスで使う場合、法人担当者が個人のLINEアカウントを使用することはないと思うので、あくまで個人向けサービスがよいかなと思います。 LINEログインについての概要はこちらに詳しく書いています。 htt […]

プログラミング

【PHP】ソーシャルログインに対応したお話(Apple ID編) ②

目次1 前回のおさらい2 実装に必要な情報3 PHPで実装してみる4 戻り先の処理4.1 composerでライブラリのインストール4.2 処理の説明4.3 実際のソース5 最後に 前回のおさらい 前回は「Appleでサインイン」を実装する前の下準備をまとめました。 今回は実際にPHPで実装をしたいと思います。 なお、ソーシャルログインについて実はFirebase上でできるぽいのですが、今回はそれを使わずに実装したいと思います。 実装に必要な情報 前回Apple Develo […]

株式会社8bit (エイトビット)

東京都目黒区でWebサイト制作、Webシステム開発などを行っております。
コーポレートサイトやWebサービスの企画・提案を得意としており、自社での経験を元にアイデアをカタチにするお手伝いをさせていただいております。

Web制作に関するご相談はお気軽にどうぞ

弊社に制作をご依頼いただく際の費用感をご確認いただける、
見積りシミュレーションをご用意いたしました。