はてなキーワード: コンパイルとは
3年前、世間一般にはメーカー系SIerとして知られている会社を退職した。ただ俺のポジションはパッケージソフト開発であり純粋なSIerとは異なる。
客ともSEとも会話せず、ひたすらドキュメントとプログラムを書く部署だ。といっても別にペーペーではなく主任クラスであり、
会社の業績がとてもよかったこともあり年収は1000万弱はあった。35歳。
これだけ見るととてもいい待遇に見えるだろう。でも耐えられないことがいっぱいあった。
Linuxで動くアプリなのにVMを動かすのも苦労する8GBしかメモリのないWindows PC、紙にコードを印刷して説明しないと納得しない品質保証部、
手作業で実施しExcelにチェックを付けていくテスト、jquery一つ使うのに3ヶ月かかる承認フロー、開発中にバグを一つ出すごとに
ひたすら反省文を求める品質保証部と一緒になって詰めてくるマネージャー、常にコンパイルできないtrunk、
Java 5の時代から進化しないコード、使いにくい社内ミドルウェアの利用を強制される設計、開発期間の半分以上を占める最上流設計、
一旦書いたコードは消してはならずコメントアウトしないといけないコーディング規約など、数を上げればきりがない。
色々改善活動を頑張ったものの、結局Subversionの導入も品質保証部がついていけないから、ということでClearCaseといわれる
今ではほぼ誰も使ってないであろうバージョン管理ツールが使われ続けることになった。使いにくい社内ミドルウェアは
研究所がその道のプロと聞いたので一緒に改善を図った。そしたらRubyしか書いたことがない文系新卒の子が出てきた。
一応研究所の人だし…と思って新バージョンのプロトの開発を依頼したら、1分以上稼働できない状態になって出てきた。
研究開発は準委任相当なのでそれ以上修正を依頼できずに期間が終わった。
また前の会社独特の文化として、大きなバグを出した開発者の反省会(社内ではとある固有名詞で呼ばれている)があった。
この反省会のターゲットになった開発チームはその資料準備で開発が1〜3ヶ月ほど止まるほど大掛かりなイベントだ。
このとき、担当の品質保証部は「連帯責任だから」という理由で資料レビューに大変な精を出す。余計なお世話だ。
このため10〜20ページほどの資料を毎週レビューにかけて最高のものにしていく。でも結局本番では幹部からの怒号が飛んで終わりである。
連帯責任とかいっていた品質保証部は幹部と一緒になって詰めてくる。連帯責任ではなかったのか。
幹部によると、この反省会があるから今の会社があるんだそう。これを経験して一人前らしい。
こんな感じで開発の体制はひどかったが、世間一般ではホワイト企業と見られている通り有休は取りやすかった。
そのため、転職活動を始めた。そしたらなんと「メモリ32GBのマシン」「mavenが気兼ねなく使える回線」「自動テスト」
「GitHub」「CI/CD」 という発言がポンポン出てくる。メルカリだのGoogleだのといったイケイケWeb系ではなく、
いわゆるSIerでもだ。最初は何だこの格差はと思ったが、まぁ営業トークなんだろうな、と思い直した。というわけで
イケイケWeb系も内定は出たものの、つい安定をとってしまい某大企業のDX系の部署に転職した。
そしたら何だこれは。最高スペックのMacBook ProからGitHubにpushするだけで自動デプロイで即サービスイン、
問題が発生したら社用携帯に通知が飛んできて、クラウド監視サービスでログをチェック、即修正即デプロイ。
社内の連絡はSlackで、スタンプを押せばIssueがたち即関連部署が対応に走る。OfficeツールはGoogle Docsで、
計算表はちゃんと表として使っている。開発者はちゃんと開発をしており、反省会の準備や品質保証部の接待なんて業務はなく
純粋にエンドユーザーだけを見ている。ここはなんて最高の環境なんだと歓喜した。また個人的にはおまけ程度であるが、
年収は30万ほど増えて大台に乗った。
さて、それから3年がたった。人間というのはいい環境になれると対して喜びを感じなくなる、というのはそうだと思う。
今では別にdeployブランチにマージされたらCIが走って自動でテストが走りデプロイされるのも、だから何?
って感じだしまぁ普通の仕事として淡々とやっている感じはする。待遇面で悪化した点もちらほらあるし
(例えば年間休日が5日ぐらい減った、残業が月5時間ぐらい増えたなど)などもある。
ただ一つ言えることは前の会社には戻れないな…ということである。人間一度生活レベルを上げてしまうと下げるのは
ただ、一つだけ今の会社に転職してよかったと感じ続けられることが一つある。それは人だ。
前の会社では家でプログラムを書いているなんていった日にはおちょくられたり、人生楽しいの的な目で見られたりした。
芸能人とゴルフの話ができないとコミュ障扱いされた。そのため仕事の話はしても、飲み会にはできるだけ行きたくなかった。
でも今の会社では雑談としてFastlyが落ちても大丈夫なCDN構想とか、AtCoderの話をして盛り上がることができる。
ダイバーシティなんていうが、人間は所詮同質な人間同士で集まったほうが快適なんだな・・・という複雑な思いを抱いている。
皆さん読んでくれてありがとうございます。いくつか質問が出ているので答えられる範囲で答えます。
真面目な疑問なんだけど、Java5のコード書いてる人を1000万で雇う会社があるの?どういうモチベーション??
製品自体が90年代から脈々とバージョンアップしている企業向けのソフトウェアなので、コードベースが古いというのがあります。
またユーザーからすると中身がJava17だろうがJava5だろうが関係ないわけで、要は業務が滞りなく進めばよいわけです。
そのため昔から受け継がれたスパゲッティコードを地道に解き明かし、新しく出てきた要件を今までのコードベースを壊さずにバグなしで追加していく、
もとからあったバグについては、その他の数百万行のユニットテストもないコードに影響なしで修正を施す、といった技能が必要になります。
こう考えると意外と希少なスキルなんだな・・・と思えるかもしれません。
clearcaseよりもsubversionの方が100億倍導入も運用も簡単だと思うんだけど品管どうなってんの?
ClearCaseご存知な方がいるんですね!一から作る製品だとSubversionのほうが簡単かもしれません。ただ、ClearCase専用の
社内ツールがいくつかあり、そのツールで出力した情報を社内資産として持っているという理由があったりします。
例えばお客さんから「この機能がバグってるっぽい」というクレームを受けた際、その機能周辺の情報をそのツールから検索し、
コードレベルで再発防止策を関係部署総出で練った上でお客さんに回答する、という運用フローになっています。
そのため、Subversionに変えるためには開発陣の一存では無理で、品質保証部やマネージャー層など全ての知識のアップデートが
必要になり、そこまでコストをかけて説得して回る必要はあるのか・・・という話になってしまうわけです。
ただ、社内の生産性を向上させるのが目的の部署としてはSubversionやGitを社内に浸透させたがっているのも事実で、
新規プロダクトなんかはGitを使っていました。ただしGitHubはプロキシでアク禁されているだけでなく、サービス名名指しで使用禁止
になっているので、相当の理由がない限り使えないかと思います。
主任クラスでも1000万円近くもらえるのか。すごい。
1000万という数字に興味のある方が多かったので参考までに書いておくと、等級ランクというものが存在して管理職を除く最上位のランクに
なると2人の子持ち、賃貸住まい、標準評価で大体900万になるという感じです。年功序列だが部署ごとに違うというイメージで、
研究所だと20代で到達する一方、利益を上げていない事業部や間接部署だと定年間際まで到達しない人も多い、ぐらいの感じです。
平均では30代中盤ぐらいでしょうか。
ちなみに私の場合は基本給は33万程度ですが、そこに裁量労働手当と住宅手当、家族手当がついて月給で50万を超えるぐらいでした。
ボーナスは個人評価よりも部門業績に大きく左右されるのですが、部署が最高評価の場合は夏冬とも150万以上でした。
最後の最後のダイバーシティについては、ダイバーシティを勘違いしているように思う
現状ではそう捉えてもらって構いません。
しかしながら開発環境のAndroid StudioはARMアーキテクチャー向け以外にもx86(x86_64)アーキテクチャー向けにもコンパイル&ビルドが可能です。
ゲームなど高度なグラフィックス機能を用いた場合に問題となるのはARMアーキテクチャー固有の機能へ強く依存する設計を行っているアプリですね。
ARMの機能へ強く依存しないように心がけて高度なグラフィックスを実現するとx86アーキテクチャーでも軽快なアプリは実装できます。
Chrome OSデバイスはAndroidスマートフォンと比較して大画面であることが多く、ゲームの需要も比較的高いことが予測されます。
広いプラットフォームへ配信することを考えてもアーキテクチャー固有の機能へ依存しすぎることは開発にとって技術的負債になりかねないので広範な実装をしたほうが良いでしょう。
このあたりは3Dゲームの開発環境ではデファクトスタンダード化しているUnityにも気をつけて貰いたいところです。
良い言語だと思うが、不満がある。
という愚痴がある。他人の書いたものを読む分には良い言語だと思うよ。
型ヒントはコンパイル時のエラーにならないじゃん。だったら、いらなくね?タプルは複数の値を返すときに使うのね。Go みたいだね。または Ruby の Struct みたいな。
あれ嫌いな人おるのか。俺も好きじゃないが。純粋に Haskell と同じ文法だったら良かったのにね。
アレはキモいね。素直に ?! で良いと思う。というか、Python は英語圏の人も納得はできないだろ、っていう文法が多くないか?
というのは同意する。ただ、書くときにそうは思わない。例えば、with 構文は Ruby の方がブロックを抜けたらクローズするという方針のが良いと思う。
濁点喘ぎや♡喘ぎのあるエロ小説が大好きで、もっと読みたいから。
自分はエロ小説を書けなかったので、書ける人にもっとたくさん書いてほしいから。
あと、自分がAutoHotkeyを入れてからだいぶたってしまったので、導入がおぼろげなのは申し訳ない。
そして肝心の、一番お世話になったサイトを忘れてしまった。最悪だ。見つけたら絶対貼る。
見つけた。これだ。
書き終わってから見つけた。
https://clrmemory.com/pc-mobile/windows/autohotkey-any-character/
AutoHotkeyのwiki。困ったらここを見る。
https://autohotkey.com/download/
(ここがおぼろげなのがひたすらに申し訳ない)
どこかフォルダを作る。後々、他に必要なファイルも入れていく。
自分はドキュメントフォルダの中に「小説用フォルダ」を作成した。
新しく作ったそのフォルダの中で、右クリック→新規作成→「AutoHotkey Script」を選択。
作成したahkファイルを右クリック→プログラムから開く→エディタで開く(最初から入ってる「メモ帳」でOK)
開いたらなんか初期状態で書いてあるけど気にしなくてよし。ってか自分はよくわからなかったから削除した。はい、まっさら!
とりあえず以下の内容にして保存。(最初からあった文章は消してしまったので、まんまこの内容)
#Include IME.ahk ;;;Pgupで♡ Pgup:: ime := IME_Get() IME_Set(0) Send, ♡ IME_Set(ime) return ;;;PgDnで゛ PgDn:: ime := IME_Get() IME_Set(0) Send, ゛ IME_Set(ime) return
保存した?よし。閉じていいよ。
おっとそうだ、さっきのフォルダに入れなきゃいけないのがあった。
の「AutoHotkey_L固有の不具合」にあるが、詳しくわからないのでとりあえず、
https://w.atwiki.jp/eamat/pages/17.html
中にあるフォルダ(ANSIかUTF8)の中のIME.ahkをコピーして、さっき新規作成したフォルダ(自分なら「小説用」)にペースト。
持ってこれた?おっしゃ
編集内容はお世話になったサイトに書いてあったんだけど、忘れたのでもう全部ここに貼ってやろう。
と思ったけど多かったので、消す部分だけ貼る。以下のやつを消さないと、実行したときに「ンンンンンン」ってなる。
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ; ; 動作確認用 内部ルーチン (マウスカーソル位置のウィンドウのIME状態を見る) ; 単体起動時のテスト用なので削除しても問題なし _ImeAutoExecuteSample: Hotkey,#1,_ImeGetTest Hotkey,#2,_ImeSetTest Hotkey,#3,_ImeIsConvertingTest Hotkey,+ESC,_ImeTestExt SetTimer,_ImeInfoTimer,ON return ;--- IME状態表示タイマ --- _ImeInfoTimer: Tooltip,% "IME_GET : " . IME_GET(_mhwnd()) . "`n" . "IME_GetConvMode : " . IME_GetConvMode(_mhwnd()) . "`n" . "IME_GetSentenceMode : " . IME_GetSentenceMode(_mhwnd()) . "`n" . "IME_GetConverting : " . IME_GetConverting(_mhwnd()) return ;--- IME Get Test [Win]+[1] --- _ImeGetTest: MsgBox,% "IME_GET : " . IME_GET(_mhwnd()) . "`n" . "IME_GetConvMode : " . IME_GetConvMode(_mhwnd()) . "`n" . "IME_GetSentenceMode : " . IME_GetSentenceMode(_mhwnd()) . "`n" return ;--- IME Get Test [Win]+[2] --- _ImeSetTest: MsgBox,% "IME_SET : " . IME_SET(1,_mhwnd()) . "`n" . "IME_SetConvMode : " . IME_SetConvMode(0x08,_mhwnd()) . "`n" . "IME_SetSentenceMode : " . IME_SetSentenceMode(1,_mhwnd()) . "`n" return _mhwnd(){ ;background test MouseGetPos,x,,hwnd return "ahk_id " . hwnd } ;------------------------------------------------------------------ ; IME窓のクラス名を調べるテストルーチン ; 入力or変換状態でIme窓にマウスカーソル持ってって [Win]+[3]押す ; Clipboardに Class名がコピーされる。入力窓/候補窓 それぞれ調べる。 ; 調べたクラス名は 正規表現になおして ; IME_GetConverting("A","入力窓クラス","候補窓クラス") ; とかやって使う。(もしくは IME_GetConverting()の中に直接追加する) ; ; あああ ← 入力窓の上に マウスカーソル持ってって [Win]+[3]押す ;  ̄ ̄ ̄ Clipboardに Class名がコピーされる。 ; ※ MS Office系のシームレス入力状態では取れないっぽい ; DetectHiddenWindows,ONでもダメ。シームレスOFFにしないと無理 ; ; 愛 ; |愛 | ← 候補窓の上にマウスカーソル持ってって [Win]+[3]押す ; |亜依 | Clipboardに Class名がコピーされる。 ; |あい | ; |藍 | ; | : | ;  ̄ ̄ ̄ ̄ ;------------------------------------------------------------------ _ImeIsConvertingTest: _ImeTestClassCheck() return _ImeTestClassCheck() { MouseGetPos,,,hwnd WinGetClass,Imeclass,ahk_id %hwnd% Clipboard := Imeclass ;IME_GetConverting() 動作チェック & IME 入力窓/候補窓 Class名確認 MsgBox,% Imeclass "`n" IME_GetConverting() } ;--- 常駐テスト終了 [Shift]+[ESC] --- _ImeTestExt: ExitApp ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
消して保存した?おし
「小説用.ahk」(自分で作成したほうのファイル)を右クリックで「Run script」で実行できる。
が、ショートカットが作成できる。作成して別なところに置いたほうが楽な人はそうするとOK。
コンパイルしないといけない……かと思いきや、しなくても実行できたから、コンパイルは要らないか。まぁいいか。
もし「要るよ」って人がいたら、作ったほうのファイルを右クリックして「Compile なんちゃら」でコンパイルできるので、どうぞ。
使い方。まずは実行開始から。
開始時になんかちっちゃいウィンドウが出てくるが、気にせず「OK」を押していい。(出ないかも)
さっきのスクリプトの中身は
が打てるようになる。
注意点としては、
他のキー割り当て一覧
書いてみよう。
「あ゛あ゛あ゛♡♡♡♡」
どうしても「一度変換を確定しないといけない」というのがちょっとひっかかるが、それでもわざわざ濁点を変換して入れたり、ダブルクォートを代わりに使うよりはいい。
喘ぎ声はひらがなやカタカナが多いから変換を確定せずに打てるのが一番いいが、コツをつかめばきっと上手く活用できるはず。活用してください。
意外と忘れがちだが、大事。
画面右下の上矢印を押すと、いろいろ出てくる。
もう誰もこのエロ小説用スクリプトが実行されていたなんて気づかない。
もっと便利にしたいときは、AutoHotkeyのwikiが参考になるはず。
他にも、ホットキーとかショートカットキーとかでいろいろある。
でも「特定の文字を入力する」はAutoHotkeyでないとできなさそうだった(自分が見つけられた範囲では)
もっ゛とかい゛てぇ゛ぇ゛ぇ゛ぇ゛ぇ゛♡゛♡♡♡♡
み゛た゛い゛の゛お゛お゛お゛お゛お゛♡♡♡♡♡♡
「技術力がある、技術者を大事にしている」というイメージのあるソフトウェア企業で働いているが、
私の周りの偉い人たちがことごとく「コミュニケーション」を連呼してモヤモヤしている。
ここでの「偉い人たち」は全員(少なくても『元』)技術者であり、そのほとんどは優れた技術者だ。
例えばカーネルコミッタだったり、有名なソフトウェアの開発者だったり、本を書いている人もいる。
雑談になると技術の話で盛り上がることもあるのに、仕事の話になるとやたらと「コミュニケーション」が連呼される。
コミュニケーションが大事なのは分かる。偉い人ならなおさらだ。それを否定するつもりは毛頭ない。
でも私より技術力のある人に「君は技術は十分できるからもっとコミュニケーションを」と言われるとモヤモヤするし、
社内で新しい技術の勉強会などがあるときは「興味がある人は参加してみたら?しらんけど」といった雰囲気なのに、
コミュニケーションのトレーニングに関しては「みんな是非参加するように」と言われるとなんだかなあと思う。
そこで、優れた技術者が出世してコミュニケーションを連呼するようになった理由を考えてみた。
--
人によって程度の差はあれど、多くの人は自分ができることは他の人もできると考えがちで、
自分にとって難しい問題は他人にとっても難しいと考えがちだと思う。
プログラミングが上達してソフトウェア開発のスキルが身につく過程を考えてほしい。
最初はプログラミング言語の文法がわからずコンパイルエラーにあたふたしてた人も、
段々と慣れてきてそれなりに思った通りのプログラムが書けるようになってくると
「文法なんて大した問題じゃない。問題なのはそれを使って何を書くかだ」
なんてことをいっちょ前に言うようになったりする。
とりあえずきちんと動くプログラムを書けるようになった人が、
仕様の変更により大幅な書き直しをするような失敗を経て設計の重要さを実感すると、
「動くプログラムを書くのは大前提。将来の変更を見据えた設計こそが大事だ」
複数のプロジェクトを管理し、複数人に仕事を割り振ったりすると、
「ソフトウェア開発でコーディングや設計が占める割合はほんの一部に過ぎない。
どうやって人と『コミュニケーション』をとるのかが本質になるのだ」
といった類の発言が飛び出すのではないだろうか。
この発言が飛び出す頃には、かつてプログラミングで苦労した記憶など忘れている。
実際問題、自分で設計やコーディングをして困ることはほとんどないのだから。
苦労するのはコミュニケーションだけであり、いかにそれを改善するか苦心する。
--
「結局コミュニケーションが大事なら、コミュニケーションを連呼するのも間違っていないのでは?」
と言われればそうなのかもしれないが、誰にでもそればかり勧めるのはどうにも違和感がある。
うちは自社でソフトウェアを開発している会社だ。手を動かしてものを作る人がかならずいる。
C++のオブジェクトのlifetimeを気にせずセグフォするコードを書く人が受講すべきトレーニングは本当にコミュニケーションの改善法なのか。
業務上Javaを書く必要があるのに「Javaは分からないから」といって自主的にも学ぶ気がない人が受講すべきトレーニングは本当にコミュニケーションの改善法なのか。
実機での動作確認を怠りバグを入れる失敗を複数回繰り返す人が受講すべきトレーニングは本当にコミュニケーションの改善法なのか。
私には何もわからない。
--
「なるほど。そんな問題があったのか。
でもそれは君が相手とうまくコミュニケーションをとって、問題解決を目指すべきだし、
それが難しければ上とコミュニケーションをとって、改善方法を提案すべきだ。
おわり
うーん、コンパイルさんのザナックとかは違う気がなんとなくするんだけど
https://morikatron.ai/2020/05/gameai_history_02/
ディープラーニングではなくて、逆に薄いニューラルネットワークだったりするんだろうか
いずれにしても、プレイヤーの能力に合わせて敵の攻撃が変わるのは本当で、
if文より、何らかのプレイヤーの能力を評価する評価関数とか、
そういうモデル化がキモなのは今の時代と何ら変わらない気がするんだよなあ
株や為替の自動取引の場合は、そのモデルが市場を短期的にでもそこそこ正しく予測できているか、
何らかの物理学的事象と仮定して短期的にでも予測できるならそれはちょっと予言にも近くなるはずで、
そのモデル化は今なら学習させることで可能かもしれない(当然、予想外の事態には弱いだろうけど
でも、ゲームの場合はユーザーが面白いか面白くないかが評価軸なので、
多分だけど、現在になってもスゴい技術がスゴく面白いに直結するとは思えないんだよなあ
スゴい技術に見えたり、感情移入さえするんだけど、中を見てみたら単純なカラクリだった、
みたいなことがあってもおかしくないというか、作る側としても労力考えるとその方が望ましいぐらいで
いかに手を抜いて面白いものを作るかみたいな視点で考えるとだけど
例えば、アキネーターなんて、自分で実装しようと思えばかなり単純なアルゴリズムというか、
仕組みであることに気が付くと思うんだけど、物事を深く考えない人は当然として、
でも、なんとなく初めてやってみたぐらいの段階だったら、脳内を当てられた気もして、
これって面白いなあ、と思ったと思うんだよなあ
いや、自分より頭がいい人たちは一発で見抜いて、くだらんと思ったかもしれないけど、
仮にそうだとしても、本当にくだらないならここまでウケなかったと思うんだよね
足りなかったねん(´・ω・`)
プログラムなんて、オープンソースダウンロードしてコンパイルするだけの簡単な仕事でよかったね。と言われた気分
すごいね
あなたにとっては、これは手厳しい ていどがトレパクして売った。
あなたにとっては 言葉でなんとかなる程度 死んで相手のせいにする程度 普通は死ぬことすら許されない 苦しむこともおんなじ なにもない 自由に生きろ 返すものはない お前の中で相手はもう死んでいる
45歳多重派遣と言っても、噂のGitHubの人ではない。すまんな。。
皆さんはプロジェクトの共有ディレクトリの最下層に”女子大生”という何もないファイルを作ってアクセスログをとっていたのがバレて怒られた事はあるか?私はある。2回。
仕事でとうとうGitHubすら使わずにプログラマ人生を終えてしまった。
レガシーな技術を使いがちな金融プログラマではそこそこ居るのでは無いだろうか。
年収は20代後半からは550万~700万位だった。残業代・退職金は無く交通費は出ない。
所属会社は営業も事務も居ない小さな所帯のフリーの集まりのような所で、会社の運営に必要な金額をある程度毎月納めれば良い会社だった。
仕事がなくなれば自分、もしくは他社員の人脈で仕事をとってくる方式。
フリーで居るよりは仕事を取りやすく、単価も上げやすいので一応会社の所属にしているだけの所だった。
それでもすごく世話になった。
私はやる気が無いプログラマだった。オフの時間にプログラムの勉強をしたことなんて殆どないが30歳、35歳の限界説を越え、45歳まで働けた。
これはそんな元ニートの高卒45歳、多重派遣の底辺プログラマの退職エントリ。
はてなのIT技術者諸氏はオフの日にも日々勉強をしているようで。
◯◯出来る人が居ないか?と聞き回る営業を見ていると多重派遣のSESとはいえ業務時間内に勉強させろと私は思う。
技術の勉強の話になると途端に何プペる?のような、仕事の為の無給勉強時間当たり前のように語られる事がやる気の無い私にはついぞ理解することが出来なかった。
足に鎖でもついてるのかね。私と一緒だね。
45歳で年収300万円多重派遣の彼は問題児なのかもしれないが、私よりはやる気があるプログラマなのではないかと思う。
退職までずっとプログラムを書き、テストをしていた。たまに客に直接要望を聞いて仕様書に落とすこともした。
C/C++・Java・各種Shell・VB/VBA・SQL、UNIX/Linux・Windowsサーバーでなんとなーく仕事をしていた。
プログラムは他の人が書いたプログラムを流用しまくって書いた。
ざっくりな話になるが、私より出来る人はわんさか居て、私より出来ない人・問題児が2割は居た。後者の彼らのおかげで私は仕事があったのだ。あと、東京だからあったのだ。
人並以上の理解をしていたのはLinuxの構造くらい。仕事でカーネル層に潜り込み、デバイスドライバの改造をしなくてはならず、月350時間くらい働いているうちに身についたものだ。
当時居た会社は年俸制という糞システムだったので1円も残業代は出なかったが。
全く知らない技術が使われている新しい現場に上位プロパー会社の営業に売りに出されることはままあった。
現場の人にさも「解ってます!」みたいな面で面接をし、何とか切り抜けることは出来た。このときばかりはいやいやながら上辺だけを勉強した。無給でな。
解っている事でも残業が沢山降ってきそうな場合は「ちょっと私には難しいですね・・・」「「いやー、解らないですね。。」と出来ない振りをする度量もついていた。
仕事は”出来る(都合の良い)いい人”に回ってくるし、仕事をしてもめったに単価を上げてくれないし、切られる時は切られる。
30歳を越えたあたりから必要な時は定時丁度に上がる精神的な技術も身についた。
それと同時にここ10~15年はブラックなIT業界でもようやく過残業を減らそうという機運が増えてきたように思う。
ライブやイベントにも足を運べるようになり、推しに投資が出来るようになった。
おそらくまだ10年はプログラマとしてなんとなく生活出来たのだろうと思う。
「あいつ、そこまで出来はしないけれど居ないと困ることもあるんだよなぁ」位のポジションで。
あるいはもう少しやる気を出し、転職をし、上位層で働くことも出来たのかもしれない。
・そしてその日、”1人日”以上の仕事が割り振られる。残業しても終わらない
・翌朝で何故おわっていないのか?を問い詰められる
・仕事のタスク割り振りが多すぎて終える事は出来ないとお伝えしましたが?と反論
・その状況で、空いている時間にやっておいてくれと新たなタスクが振られる
・空いている時間とは?と聴いてみるが、コンパイルしている1分の時間に少しづつといわれ、そんなの出来るわけ無いですよね?。どこに空いている時間があるか教えて下さい。
と、毎朝そんな問答を繰り返していた。
改善をする気もおきなかった。早く次の現場に行きたいなという事ばかり考えていた。
そして気づいた。この仕事にようやく私は飽きたのだと。
子供も数年前に生まれ、子供が成人するまでこの仕事をするのも耐えられないと。
そんな時に副業のほうを本業にする決意をした。会社を辞め、起業をした。
今は全く別業種の業界で働いている。この先うまくいくかは良くわからない。
3次請け、4次請けの会社に居たので理不尽やパワハラには事欠かなかった。
まだ若手の時、鉄砲玉として使われた事があった。
フロッピーを本番端末のあるセンターに密かに持ち込み、定例メンテナンスの振りをしてシステムを黙って更新するという密命が若手の私と、他社の派遣PGで新人のK君に与えられた。何度も。
かばんの奥にフロッピーを隠し、かばん持ち込み検査で検査員にばれないようにし、潜り込む。メンテナンス用の作業IDを使用して黙ってシステムを更新するというのを繰り返し行った。
今考えると下手すると裁判沙汰なんじゃないだろうか。しかも見つかったら責任を取らされるという。
テンパった彼は入館証ではなく、隠していたフロッピーを検査員に見せつけたのだ。
だが、早朝ということもあり、検査員がほぼ寝ていたので問題なく通れてしまった。
今思うとあの時は首の皮一枚で大丈夫だったんだなと。
大手家電メーカーの工場で仕事をした時、プログラムの仕事なのに作業服をまず”自費”で買わされた。作業服いらねえだろう。
工場内にある窓の無いプレハブ小屋が開発現場だった。人権が無ぇ。ファーウェイの工場にはヨーロッパの街並みが再現されているらしいが。
この現場は電機メーカーのIT子会社D社からE社に投げられ、部屋に私以外だと窓際管理職のD社社員1人とE社の人間しか居なかった。
何故、E社の人間の中に私1人だけ他社の開発要員が入るのか?
入ってすぐに理解した。担当するシステムが1人だけで長く開発していたシステムで、スパゲティすぎて破綻しかけているのだ。
これを開発し続けられればヨシ、破綻したら私の(会社の)せいということにしたいのだ。
入って1週間で営業にコレはダメだと、早く抜けさせてくれと直訴した。
結局抜けるのに4ヶ月かかったが、その間、本当に酷い日々だった。
小さな改修が多く、納期は1週間か2週間毎にやってくる。だが仕様を投げるD社の人が鬱で会社にあまり来ない。他のD社の人に聴いても何も解らないという。
1週間の仕事で金曜日納品なのに、木曜日の夕方に2日酔でやってきた担当者に仕様を聞き出し、金曜日に意地で納品するも、気に入らないところがあったらしく「前担当者よりスキルが低いですね~」と言い放たれた。精神の苦行だろうか。
私の抜けた後、E社の別な人間が担当するも無事破綻しかけているという話は後ほど聞いた。自分のスキルでは本当にギリギリだった。危なかった。
高校卒業後はニートだった。猫と母としか会話をしない2年を過ごした。
その後、大手新聞社とオペレーター派遣会社が共同で作っていた文科省認定ではなく定期の学割も効かない街のパソコンスクールに通った。
教師は二種(基本情報)も持っておらず、業界歴は1年だけで環境変数も理解していなかった。
その学校で多重派遣という底辺で生きる技術者の卵に他の20名と一緒になった。
文科省認定の専門学校の情報処理科では少しマトモに勉強すれば大手SIerや商社の子会社の「何ちゃらソリューション」に入れる事も多い。
アホの一つ覚えのように大手の子会社は「何ちゃらソリューション」なので、「何ちゃらソリューション」というIT会社を見たらセンスの良い経営者が名付けた何処か大手の子会社だと思って差し支えない。あとイノベーションとかな。イノベータとかな。
就職氷河期の真っ最中に地方中核都市で就職をしたのだが、入社直前に東京勤務になった。
会社からは15万円の引っ越し資金だけが支給された。氷河期の3月に転職は出来なかった。
親に敷金礼金4ヶ月分を負担してもらい、親父に秋葉原の石丸電気で家財一式を買って貰った。
SES企業はまず新人教育の当たりハズレががある。ハズレのほうが多い。
派遣法の隙間をついて、たった1人で新人が派遣されてくる事も多い。彼らの大体は苦労を強いられている。
私は運良く同じ会社の人が沢山居る現場に入ったのだが、教育担当が想像を絶するパワハラマンだった。とにかくどんなことにもキレる。
ある日個室に呼び出され「お前は田舎に帰って缶詰工場で働け。なるべく頭の働かなくて良い仕事を選んでくれ。業界にいると迷惑だ」と言われてしまった。
親に学校に通わせて貰い、引っ越し代も払ってもらったのに使い物にならないと言われたときの絶望感は大きかった。
地下鉄の電車がホームに入ってきた時、ホーム下にふと吸い込まれて行きそうになり、寸前でハッとなり鼻先を電車がかすめていった。
知らないおばちゃんに「しっかりして!」と怒られた。都会の人も優しい。
それ以降、他社でも同じチームの新人には丁寧に接していた。私はまだ恵まれていた方なのかもしれないと思うこともままあった。
その家電はTronからLinuxにOSが切り替わり、開発・コンパイル用のソフトウェアのシミュレーターが新規開発となった。
Linuxのカーネルプログラミングが必要となり、日本語の文献もインターネット上の文献も少なく、オライリーの洋書(現在は日本語版もある)を取り寄せて読まざるを得ない状況だった。
英語は全く出来ない&私が作るとなると当然開発は遅れた。
私はカーネルプログラミングなんて当時はしたことが無かったし、集められた人員もLinux上でC言語の仕事をしたことがある。くらいの人員が集められたのだ。
単価が安い人しか使ってはいけないというルールで運用されていたらしい。
苛立った家電メーカーの”部長”が私を広いフロアの大人数の前でこう叱った。
「こいつ全然解ってないじゃないか!!なんでこんなのにやらせているんだ!!」
中国出張で散々おねーちゃんを買った自慢をしていた糞みたいな人間に罵られるのである。
月単価55万で350時間働かされ、残業代は1円も出ずである。誰もフォローをしてくれなかった。
徹夜が3日目に突入した午前3時、役職付きが私のPCの後ろで「まだ出来ないのか?」と15分おきにやってくる。
何とか完成はさせた。恐ろしいことに若かった当時は満足感をそれなりに得ていた。
精神的に色々と凹んでいた時に励ましてくれたのは中国人の同じ派遣の人だった。
大卒の育ちの良い中国人派遣技術者が沢山居たが、彼らは本当に性格がまっすぐだ。彼らが私の中国感を大分良くしてくれた。
(ずっとメッセンジャーばかりやっている連中もいたが)
彼らのような有益な人材が来てくれる時代があと何年あるのだろうか。
私は所属未定のまま倒産した次の日も、土日も何故か働いていた。
自分が働かないと他の人が倒れてしまうと当時は考えていたし、ようやく仕事が出来るようになって謎のやりがいを感じていた。
そして、翌週、中間の会社から流石に所属未定はマズイのでフリーとして契約しましょうと言われたのだが、単価の話なんて当時若造だった私には解らないのである。
結局、300時間以上働く中、残業代無しの45万円固定と言われるまま契約をしたのだが、
当時の私には多い金額に思えていたものの、都内のフリーの技術者としては当然低すぎる金額であった。
忙しい中、アドバイスを貰う余裕もなく、無知のために中間会社の狸親父に低い金額で契約させられたのだった。
みなさんは自分の単価くらいは知っておいたほうが良い。
賢い同じ会社の同僚は失業手当で半年間遊んだか、会社契約と同じ単価でフリーとして契約していた。
余談その2、当時なんとなく興味を惹かれて当時流行っていた日本礼賛本を読んでみた。
国産OSのtronは携帯電話で世界を席巻!!みたいな事が書いてあったが、その本が出ていた頃、携帯電話のOSはLinuxとSymbianで締められていたのを知っていたので興味深く読んだのを覚えている。
他にも
「1次請けが私の単価を上げてくれても中間会社が搾取し、私には全く反映されない話」
「野田がドモホルンリンクルのバイトのように円高を注視し続けた時、円高&オフショアブームで単価が2年で2回減った話」
「中間会社にオフショア開発の失敗の後始末を手伝って欲しいと言われ、現場をインフルで倒れた振りをして休んだ話」
「5000円の著作権フリー音源をシステムに使用するのに数百万かかった話」
「メモリ枯渇エラーが頻発したのに数百万以上のコストをかけて打ち合わせをする虚無の話」
「メモリ初期化エラーが頻発した時に、解決方法としてとんでもない方法を提示され、阻止した話」
「15万円のPCが60万円で導入される仕組み」
「入社初年度の忘年会の一次会が新宿の有名なゲイのショーパブで、他の社員と会話も無く終わった話」
「無呼吸症候群で猛烈な睡魔との戦い、現場で怒られるようになり、睡眠薬で生活リズムを取り返した話」
「大手会社のコンプライアンス啓蒙画像に著作権違反を発見した話」
「キレる、人前でイライラする人とは働きたくない話」
「某銀行の開発子会社の美人率が高い・銀行員の婚姻率の格差社会の話」
などなど考えていたが長くなったので終わり。
多重派遣先は色々なキャリアの人が多い。元ホスト、元キャバ嬢もいれば元医師の中国人、元アニメ会社勤務、元美容師、元寿司職人等の転職組も多い。
以前いたプロジェクトの有名SI企業のPMもSES上がりの元寿司職人だった。
SESは就職の壁が低い。そこを足掛けとして転職し、さらなる転職で大手や大手子会社に転職するのは悪くないキャリアプランの一つなのかもしれない。
SESの会社も玉石混交なのでまずは良いSES会社に入るのは大事だし、多重派遣は改善されてほしいが。
何が書きたかったのか忘れたし飽きた。
業界からやる気の無い45歳が1人減り、業界は少し平和になった。
追記:続編を書きました。
エンジニアになるきっかけでバズってるnoteの人が同じ学科のOBだった
在学期間被ってなさそうだし、知ってる人でもないから完全に他人なんだけど
学生時代から落ちこぼれてる底辺OL的には優秀な方は人生の選択肢多くてよろしいなぁ…って感想しかないんだけど、大学の入学経緯は面白かったな
仲の良かった友達とか先輩とか、落ちこぼれの自分とつるんでるようなタイプの20人くらいの狭い範囲だけど、自分含めてほぼ全員が第一志望落ちてあの学部だった。該当しないのは推薦で入った子くらい?
今は知らんけど当時は偏差値そんなに高くなかったし、割と僻地だし、第一志望に選ぶほどの感じじゃなかったのかな
自分も都内の国立落ちたから、もうこの際センターの成績で入れそうなとこならどこでもええわ…って感じで選んだし
プログラミングの授業とか突然コンパイル?デバッグ?エラーコード?なにそれ?みたいな感じで1ミリも意味わからんから仲間内で先輩に回してもらった前の年の課題丸コピペして出してたな…数学も必修であるけど数ⅡBまでしかわからん文系にも容赦なく数Ⅲ?C?の内容で進められるから何なら高校の頃より参考書読んで勉強したわ…懐かし…
お陰で理系とかIT系向いてないのわかったから一般企業の事務職に就いたけど、学部の名前でIT詳しい人みたいなの期待されて採用されてたっぽくて新卒の頃は無駄に苦労した
転職する時にも学部の名前のせいでシステム系の仕事打診されたりしてそういう点では大学選択失敗したかも
遊ぶとこは全然なかったけど生活費も安かったしぬる〜く四年間遊べたから良かったかな〜
オタクも多かったから普通なら恋人とか出来なさそうな感じの同級生同士とか先輩とかと付き合ってそのまま結婚した人も多かったし、学生時代に彼氏とった・とられたみたいな話があったり、オタサーの姫って実在するんだな〜って感じで面白かったな
全然オタクじゃなかったからエヴァンゲリオンもガンダムもプリキュアも声優もBLもわかんなかったけど、なんだかんだ仲良くしてくれる子が結構いて、もう今は結婚したり子供産まれたりで疎遠になってる子も多いけど、当時色々オタクなこと教えてもらってアニメ見たりゲームしたりするようになって趣味も増えたから、第一志望の大学で四年間ぼっちで過ごすよりは良かったなって感じ
たまたま自分は友達とかそこそこ出来たけど、何年か前に友達ができなくてぼっちだった人が半年で辞めたなんて噂もあったりしたから、本命滑ってどこでもよくなってるなら友達できそうなとこにするのもアリかも…って何年か前に受験生の従弟に言ったら縁起でもないことを言うなと叔母に怒られたけど、結構本気でそう思う