意味不明なシステム

愚痴です。

私は普段エンプラ系システムをjavaとかいう前時代的な言語でせこせこ作る仕事をしていますが、もうあったまくることが多い。常にイライラしている。

今回も「非同期にRSSデータを取得して表形式に加工してこのページに張り付けて欲しい」などと言われた。しかしそのRSSなるものの仕様がまたおバカで、RSS1.0の仕様によってカテゴリが階層化されたアイテムを表現しようとしているので妙なフォーマットを織り込ませている。具体的には、「Xという特殊文字がタイトルについていたらそれは大カテゴリとみなす。Yという特殊文字がタイトルについていたらそれは小カテゴリとみなす。{}で囲まれた文字があればそれは小カテゴリの件数とみなす」などというアホ臭い仕様を解釈してデータを加工せねばならぬ。

そんなまどろっこしい事するならわざわざRSSじゃなくてもJSONでいいじゃん、と思うのだけどそういうことを言うと「JSONってなんですか?」という話から始まりかねないのでぢっとこらえてその妙なRSSを解読するコードを書く。

したら、今度はそのRSSをajaxで取ることができない。access-control-allow-originヘッダが付いていないのである。本番運用ではRSS配信サーバとその内容を表示するページのサーバは別だというので、じゃあこのヘッダつけなきゃ読めませんよ。と言う。しかし、そう言っても「HTTPヘッダってなんですか?」という話から始まりかねないので、「Tomcatのバージョンいくつの場合はこういう設定をして、バージョンいくつの場合はこういう設定をしてください」とお願いする。したら、「なんか動かない」とか言われてエラーログを送ってきて、みると「ライブラリが無い」とか書いてて、だから、ライブラリ入れてってさっきのメールに書いたでしょ。というかこのくらいのエラー、なんとか対処してくださいよ。

エンプラ系システムは大企業の人たちにプログラミングとかさせると単価が高いのでシステムの設計だけやって製作は外注にだすケースがほとんどだ。すると大企業の人たちはどんどん技術に疎くなるので、ソフトウェア開発をやる会社なのにソフトウェア開発の知識がまるで無いという状態になる。で、ソフトウェアの知識が無いなら上流設計から外注に任せればいいのに、そこはプライドがあるのか「俺たちが基本設計を行うからお前らが実装しろ」みたいな人が多くて意見するとへそ曲げたり強固に反対意見を主張して来たりしてうざい。それが合理的意見であれば私も従うが、全然合理的じゃないので私としては納得がいかず、しかしそこで言い争いをしても時間だけ浪費してメリットは無いので、「まー俺の使うシステムじゃないしどうでもいいや」と糞みたいな場当たり的コーディングで済ましてしまう。そうすると私の技術力も向上しないし、モチベーションも上がらない。技術者として生きていくには最悪な環境であると思う。

こういうことをやってるとホント頭おかしくなる。まじで転職すべきかなあ…。しかし今の職場は家から近いし給料もいいんだよなあ…。悩むわー。