現役プログラマーが考えるSESの価値
システムエンジニアリングサービスという現代の闇について考えてみる。 私は某自社サービスのエンジニアとして働いているが、入社してくる方の半数以上がSESからの転職らしい。 なぜ自社サービスの会社へ入社したのか・・・話をしているうちにはっきりと分かった気がした。
色々なブログでこの業態のヤバさについて語られているが、概ねその通りだと感じる。 どの辺りが具体的にヤバいをこのブログで暴露し、少しでも救われる人がいたならと思う。
まず第一に、スキルアップが見込めないという点だ。 システム全体のある特定の部分しか担当しない為、当然の事ながらスキルアップは見込めない。 そもそも重要な部分は弱小SES企業などには任せられない為、簡単でそれこそ未経験でもできるような仕事だけを投げるというのが現状で、 未経験OKというのはその意味である。
次にスキルアップができない事による転職の難しさだ。 若いうちはいい。だがこの歳でそれしかできないの?人間はSESが作り出していると感じる。 その世界にいると、その世界しか見えなくて、自分の客観的な価値を正確に測ろうとしなくなったりする。 1日でも早くその状況から抜け出して欲しい。
それから給与の上がらなさである。 簡単な誰にでもできる仕事は、とにかく単価が安い方がいい。だから若くて安い人が何より欲しいのだ。 正直単価の高いベテランは必要ではない。
残酷な書き方になってしまったがこれが現状だと私は思う。SES企業はマージンビジネスなので、絶対に赤字にはならないし、人がいればいるほど儲かる仕組みになっている。また変に仕事が出来てしまう人がいると工数が減るので、実は厄介というおまけ付き。
最初はSESで体系的にITを学んで・・・と考えるひともいるかもしれない。 だが私はその考えは危険だと考えている。なぜならSES企業が欲しい人は、そんな人だからだ。 あまり考えない、とりあえずな感じの人。
繰り返しになるが、SES企業は人の数=売り上げである。売上げアップの為なら、騙しても人を雇うだろう。 賃金も、若い人には高く設定してあるケースが多い。給与そこそこ、仕事楽。だがその反動は10年後に来るだろう。 その人の将来は企業には一切関係ないのだ。
転職は、慎重に。(※DODAの回し者ではありません)
現役プログラマーが考えるプログラミングスクールの価値
先日偶然にもプログラミングスクールに通う生徒さんと話をする機会があり、色々と思うことがあったので綴ります。
私自身の経歴を8文字で言うと、現役プログラマーです。
決して優秀では無いですが、マネージャーとして活躍?しております。
それでは早速ですが語っていきます!
率直な感想を言うと、「行かない方がいい」です。
理由は費用対効果があまりにも低すぎるからです。
話を聞いて知ったのですが、現在プログラミングスクールは2種類あるようです。
一つ目は、全くの初心者向けのプログラミングとは?を教えるスクール。
二つ目は、基礎はあるが実戦経験がない人向けの、応用を教えるスクールとのこと。
今回お話した生徒さんは後者のスクール出身でした。
約20万円というかなり高額な受講料を支払い、Ruby on Railsの学習をしているとのこと。
カリキュラムを見せてもらったのですが、ぶっちゃけこれが20万円かというレベルです。
すべて公式サイトのチュートリアルで学べる内容で、なんてもったいない....
少しばかりですが怒りすら覚えてしまったのでここで正直におはなしします。
まず上記の二つ目のスクールを志願する方は、新人のプログラマーさんか基礎を学んでさらに高みを目指す独学者でしょう。
彼らはきっと若くてお金も無くて、でも必死で何かを掴みたいと願っている将来有望な金のタマゴです。
ただ知らないだけ...それをいいことに搾取しているようにしか私には思えませんでした。
もちろんビジネスですから、講師の方も必要ですし、ましてRailsの実務経験者ともなれば単価もそれなりでしょう。
しかし内容があまりにもお粗末です。ドットインストールが月額千円未満ですよ?それに...勝ててますか?
もしこの記事を見ている、フレームワーク等の応用編が学べると謳ったプログラミングスクールを検討されている方がいらしたら、私はおすすめはしません。
理由は、誰でも簡単に学べる内容しか教えていないからです。
「プログラマーがサポートします!」という安心感だけに高額な費用を払う必要は全くありません。
カリキュラムは全てドットインストールで学べる内容です。
最近ではフレームワークに関する良本もあるので、それを使って勉強した方が圧倒的に深く学べるでしょう。
知らない人にとっては、実務で学ぶようなデザインパターンとかコードの書き方とか学べるんじゃないの?
とか考えちゃうかもしれません。
断言しますが、実務で見るようなコードは実務でしか学べません。
なので一番いい方法は、独学者であれば会社に飛び込むことです。新人さんなら会社のコードを必死で読むことです。
これをプログラミングスクールで用意することは出来ませんし、教えることも100%出来るはずがありません。
纏まりがないまま綴ってしまいまいしたが、結論はフレームワーク等応用的なカリキュラムを用意しました系スクールはドットインストールやYouTubeに負けてます。
やる気のある若者から搾取してやる感が否めない。実践的なコードや設計等は実践でしか学べませんので、スクールはそれを匂わせないで~!!
Symfony 4のErrorあるある集
概要
symfony4のErrorあるあるを纏めていく。随時追加していく。
There is no extension able to load the configuration for...
→bundleの登録がされていないのでconfig/bundles.php
に登録する。
Symfony 4のErrorあるある集
概要
symfony4のErrorあるあるを纏めていく。随時追加していく。
There is no extension able to load the configuration for...
→bundleの登録がされていないのでconfig/bundles.php
に登録する。
PostgreSQLのErrorあるある集
概要
慣れないPostgreSQLのErrorあるあるを纏めていく。
SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error at or near "user"...
userはPostgreSQLでは予約語らしい。ダブルクォーテーションで囲んであげることでテーブル作成は出来るが、select文等を書くときもダブルクォーテーションで囲う必要がある。 Syntax error at or near “user” when adding Postgres constraint
Gitの使い方(ブランチのマージ)
やりたいこと
マージのときにcheckoutってどっちのブランチに移動してからだっけ?となる病気にかかっているので備忘録。 マジで病院に行きたいが、お金がない。 例として、bugfixブランチの修正をdevブランチに反映させる場合を記載する。
手順
- 変更を反映したいブランチを最新状態にする
- 変更を反映したいへcheckout
- merge
// 1. devブランチの状態を最新にする git pull --rebase origin dev // 2. 変更を反映したいブランチへcheckout git checkout dev // 3. merge git merge bugfix (マージしたいブランチ名)
symfony4のコマンドチートシート
概要
symfony4のよく使うコマンドを整理していく。
基本的にはphp bin/console list (make)
といった感じで、続きを知りたいコマンドをlistの後に打つことで一覧が出るのでこれを使うこと。
随時追加予定。
ルートの確認
php bin/console debug:router
コントローラーの作成
// UserControllerを作成 php bin/console make:controller User
Migrationファイルの削除
$ php bin/console doctrine:migrations:version 20171210142949 --delete