2017-06-26

地獄の社内SE

社内SEになった。

仕事を辞めて主夫業に勤しんでいたら、知り合いから声がかかった。

1人で社内システムを作ってきたおじいさんがあと数年で定年になるから

引き継げないかとのこと。

メインのシステムベンダー委託してて、そのおじいさんが作っているのは、

メインシステムデータを加工して2次利用しているものほとんどとのことだった。

社内SEはなんとなく楽そうなイメージがあったので、就職した。

言語エクセルVBAとVB.NET 1.0。

中身を見るとどちらもかなりやばい

VBA編

ウォッチウインドウを知らないのか、変数はすべてセルに入れてる。

 変数名はすべてRANGE("A1").valueみたいな感じで全く意味が分からない。

・処理遷移がおかしい。

 セルに1を入れる。そのセルchangeイベントで処理が動くとか。

 SHIFT+F2が無力化されてる。

・なるべくワークシート関数で処理してる

 データベースからとってきたデータを丸ごとワークシートにコピーして

 if,vlookup,match関数を駆使して帳票にしたり、CSVにしてる。

 データ100件制限があったり、1関数を直すときは100行コピーしないといけない。

 画面中に埋め尽くされたワークシート関数をみて途方に暮れる。

・format関数を知らない。

 8桁の日付をとりたいときyear、month、day関数がワークシートにあり、

 その下の行で月の二けた判定、日の二けた判定のif関数で頭の0をつけ

 3行目でconcatenateしている

タイマー起動

 毎朝100本ぐらいのマクロが動いてる。

 タイマー起動なので、毎日セットしないといけない。(タスクスケジューラーを知らない)

 がんがんエラーが発生するので、マクロ設定をエラー処理対象外エラーで中断にしないと動かない。

・遅い

 textboxのchangeイベントでDBからデータ取得処理を入れているので、データが多くなると1文字打つごとに数分待つ状態

 exitイベントを知らないらしい

 DBの更新処理でもテーブル全件とってきて、ループしながらキーが一致するのを探して更新

そんなつっこみどころしかないEXCELマクロが200本以上ある。

VB編

・.NET1.0

 windows7や8に無理やり.netframework1.0を入れて動かしてる。

 顧客PCにも入れてる

オブジェクト名は代えない

 変えられることを知らないのかもしれない

 textbox100とか存在してる。

 EXCEL同様変数は隠しtextboxに入れてる。

設定ファイルおかし

 1.0なのでconfigがないのはしょうがないが、設定ファイルは固定パステキスト

 行数で管理

・WAITがいっぱいある

 試しに取ったら動かない

・DBを最後まで回すとき

 例外が発生するまでまわす。

変数関数スコープ管理

 ない。基本グローバル

クラス

 ない。

ネスト

 ない。

おじいさんが20年にわたって深夜残業休日出勤を厭わず作ってきた、地獄の社内システム担当になったらしい。

  • リファクタリングのやりがいがあって良さそうな職場じゃん!笑

  • マジレスすると、「クソなんで改修するわ」で工数とって自分流に改造できるんだからかなりいけてる職場だろ。 昔の人はやめるんだしもうその人のことなんて気にしなくていいわけだ...

  • おじいさん「毎日、タイマーセットするのが仕事でな。タスクスケジュウラァに任せたら、わしの仕事が無くなっちゃうじゃろ?」

  • Perl4以下なスクリプトをPerl5にせっせと移植していたときのこと思い出した。

  • 俺の仕事も似たようなもの。 月毎の処理が正規化されてないから、 月が変われば手作業でソースの項目名を修正するんだぜぇ ワイルドだろう? わざわざうるう年かどうかをユーザー...

  • おじいさんの定年まであと数年ってことは天国じゃないか?

  • ベンダーのシステムに組み込める要素は無かったのかな? 結構な年数あるんだし、タイミングはあったと思うんだけどね。それをしない無能だったのか。 とりあえず、糞プログラム稼働...

  • タイトルでチャックノリス的な何かだと思ったのに・・・

  • うちの1万行1関数のVBと似たノリだねー。 こっちも書いたのは爺さんだった。 同じ設計思想で書かれたVBのバッチが80個ほどあってWin10でのテストが自分に回ってこないかふるえる毎日。

  • マイクロソフトさん製のExcelだのVBであれば、サポートやデータ互換の余地があり、ノウハウの使いまわしができるだけ、まだましだぞ。 東芝のThe PIPSがすごーいとかリコーのマイツール...

    • 東芝のThe PIPSがすごーいとかリコーのマイツールのオートが至高とかいうじいさんが現れてからが本編。 2行目からもう地獄とわかって草

      • これを見ると、いかにクライアント処理とサーバー処理を明確に定義できてない中小企業が多いかがわかるよな。 クラウドのおかげで改善されつつあるけど。

  • 本当の地獄はリファクタリングなりモダナイズが終わった後にやってくるよ 何もする事が無い一人の部署 話し相手もいない 相談相手もいない 評価もされない 定時であがるし 給料も貰...

  • 20年前に作ったシステムってことを無視したコメント大杉ないか 主な機能が問題なく動いているシステムに手を加えることへの抵抗と予算が降りないことくらいよくわかってるだろ

    • 20年前でも予算が無くても元増田があげた実例のようなクソコードは生まれんぞ。単なるスキルの問題。 1人でやってたから自分がメンテナンス出来れば良いし、問題点を指摘してくれる...

      • 多少デグレしても問題ないシステムなら適宜コード直せばいいけど元増田見たら社外とデータやり取りするシステムっぽいし こういう『明らかにゴミだけど直した副作用で問題起きたら1...

  • この程度のレベルの爺さんが職責を全うできたってことは、そのクソコードをリファクタリングした後は天国やん。 好き勝手出来るで。 ワイが昔いた大企業、情シスだけで1,000人くらい...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん