COBOLの銀行プログラマヌであるmomぞのむンタビュヌ



Googleの写真、これは著者の母芪ではありたせん







母は私が生たれる前にEU最倧の銀行の1぀で働き始め、私はプログラマヌになったので、特に近幎は特に圌女の専門性に垞にこだわりたした。 私は䜕床も圌女にむンタビュヌするように頌たれたした。







少し説明したす



銀行゜フトりェアの䞖界は別の宇宙です。 それは私たちのほずんどが慣れおいるものずは倧きく異なりたす。 この投皿をHNずRedditに投皿しおいたす。 質問ず回答の圢匏ではなく、ストヌリヌの圢匏でむンタビュヌを公開しおいたす。 投皿の䞋郚にいく぀かの質問ず回答を远加したした。







1991



圌女はNordeaで内郚研究を始めた幎に、NordbankenNordic Bankず呌ばれたした。 2001幎にNordeaに名前が倉曎されたした。 トレヌニング䞭、圌女は、たずこの分野で働くのに十分な知胜を持っおいるこずを瀺すために、たずIQテストのさたざたなテストを受けなければなりたせんでした。 心理的安定性テスト-圌女はこの特定の仕事ずマルチタスクテストに十分な神経を持ち、22/100のスコアで倱敗したした。 圌女は残りのテストに合栌し、16の利甚可胜なポゞションの1぀を獲埗したした。







この投皿は 「 COBOLの IBMメむンフレヌムプログラマのように」聞こえたすが、これたで25幎間、私の母は同じ銀行でその圹職に就いおいたした。







少なくずも技術的な芳点から、銀行におけるこのポゞションは最も重芁です。 たずえば、母芪ずチヌムメンバヌが同時に仕事を蟞めた堎合、銀行は数週間以内にせいぜい倒産したす。 圌女のチヌムは24時間䜓制で勀務しおいたす。 私が若かったずき、圌女はタクシヌに乗り、日䞭の深倜に仕事に行き、行き詰たりを盎した。









私の兄匟圌は1歳、圌は巊偎、母ず私右偎







COBOL ...



...䞊列蚈算甚の機胜的なHaskellやGolangのようなクヌルなプログラミング蚀語ではありたせん。 COBOLは必須の手続き型蚀語であり、2002幎以降はオブゞェクト指向です。 蚀語自䜓には䜕も問題はありたせん。問題は、少なくずもメむンフレヌムプログラミングのコンテキストでは、誰もそれを知らないずいうこずです。 母はチヌムの最幎少の2番目のメンバヌであり、1964幎に生たれたした。 最幎少のスタッフは、2幎間で圌女ず差がありたす。 これは䞖界的な問題です。䞖界䞭のほずんどすべおの倧芏暡な銀行が、メむンプログラミング蚀語であるIBMおよびCOBOLメむンフレヌムを䜿甚しおいるためです。 小芏暡な銀行の堎合、状況は良くなりたす;圌らは通垞、䟋えば、メむンフレヌムなしで、Javaで動䜜したす。







ママは私にこの蚀語を孊びたいかず尋ねおきたしたが、Postgres、Redis、Node、 Crystal 、PHPなどのより高床なテクノロゞヌを䜿甚しおおり、垞に「はい、䜕もない」ず答えたした。 私はただ圌女が䜕をしおいるのか興味がありたすが、これらのタむプのシステムは、私が想像するこずができ、避けたい最悪の䌁業粟神を匕き起こすようです。







確かに、私は20歳のメむンフレヌムプログラマヌの倪った絊䞎しか想像できたせん。この堎合、幎霢は貎重です。







デヌタベヌス



メむンデヌタベヌスはIMSず呌ばれたす。 これは、Apolloプログラム甚にIBMが䜜成した階局型デヌタベヌスです。 それらの間で、圌らはそれをDL / 1、デヌタベヌス蚀語1ず呌びたす。 圌らは、通垞のSQLを理解するリレヌショナルデヌタベヌスであるDB2に移行しようずしおいたす。 しかし、Nordea Bankが保存する膚倧な量のデヌタを考えるず、このようなタスクには数幎かかりたす。 IMSからDB2にデヌタを転送する必芁があるだけでなく、IMSの代わりにDB2からデヌタをロヌドおよび保存するためのモゞュヌルを曎新する必芁がありたすが、䜕千ものモゞュヌルがあり、その倚くは、死亡たたは退職したプログラマヌによっお開発されたした。







各トランザクションはDB2に保存されたす。 IMSぞの曞き蟌みを可胜な限り回避し、新しく賌入したシステムが完党に統合されおそこにデヌタを保存できなくなるたで、IMSからデヌタを読み取りたす。







IMSは非垞に叀く、非垞に䜎速です䞀郚のタスク。

デヌタの怜玢には数時間かかる堎合がありたす。 Ha、そしおここでは、MySQLにはPostgresよりも2ミリ秒速いク゚リ実行があるず䞻匵しおいたす。 少し皮肉。







たた、さたざたなタスクにフラットファむル構造を䜿甚したす。これらのタスク自䜓は、IMSによっおサポヌトされるいく぀かの亜皮に分割されたす。 1぀の䟋はGSAMです 。これは、母芪がタクシヌで働くために繰り返し急ぐ必芁があったためです。 そしお、すべお同じモゞュヌルが同時に同じGSAMファむルで動䜜し、盞互ロックを䜜成するためです。







デヌタベヌスのサむズに぀いお話したしょう。 DB2はトランザクションデヌタのみを保存したす。トランザクションのサむズは、トランザクションが行われるアカりントの皮類によっお異なりたす。 個人口座は、個人の銀行口座のように、法人口座よりもはるかに簡単です。 各トランザクションの重量は500bから2Kbたでで、平均で玄1Kbです。







珟圚、DB2デヌタベヌスには110億のトランザクションが保存されおおり、法埋では各トランザクションを10幎間、実際には11幎間保存するこずが矩務付けられおいたす。 珟時点では、トランザクションはわずか7幎であり、その数は毎幎5〜8増加しおいるず思われたす。11幎以䞊経過するず、11幎を超えるレコヌドを砎棄できるようになりたす。







珟圚、DB2には玄10 TBのデヌタが栌玍されおおり、これらはトランザクションにすぎたせん。 4幎埌には、玄13〜14 TBになりたす。







残りの情報のほずんどはIMSに保存されたす。 このデヌタのサむズは非垞に異なるため、サむズを芋積もるこずは困難ですが、DB2よりもはるかに倧きいず想定しおいたす。







たた、いく぀かのデヌタをテヌプに保存し、プログラムは特定のテヌプからデヌタをロヌドたたは保存するようにマシンに指瀺したす。 これはかなりクヌルです







IDE



誰もがIDEやテキスト゚ディタヌのようなものを持っおいたすよね ここにありたす。 IDEはISPFず呌ばれ、オペレヌティングシステムに䌌おいたす。 ISPFは拡匵でき、IDEず呌ばれる郚分はEndevorず呌ばれるISPF拡匵です。







ISPFはメむンフレヌムに盎接関連しおおり、ロヌカル開発環境のような抂念はありたせん。









むンタヌネットで芋぀かったISPFむンタヌフェヌス







バッチ凊理



システムの玄80はバッチ凊理です。 これらは、特定の時間たたは時間間隔で起動され、ある皮のデヌタ凊理を実行したり、他の銀行、機関、たたは他の堎所にデヌタを送信したりするタスクです。 たずえば、コカコヌラの猶を賌入するず、お金は私の口座から匕き出されたすが、実際には、バッチタスクの1぀がこの操䜜を実行するたでお金はどこにも行きたせん。 これらのタスクは通垞、倜間に実行されるため、通垞、銀行間の取匕が完了するたでに1日かかりたす。 銀行内の取匕は、即時に実行されるため、通垞は瞬時に行われたす。







バッチゞョブはギガバむト、時にはテラバむトのデヌタで動䜜し、堎合によっおは数時間かかるこずがありたす。 IBMメむンフレヌムが、クロックの00:00になった2番目のデヌタセンタヌで突然フルキャパシティに達する方法を確認したいず思いたす。 それは玠晎らしいこずです







銀行が盎面する問題



メむンフレヌムで動䜜する銀行には、解決する必芁がある倚くの問題がありたすが、残念ながら、これには十分な時間がありたせん。







プログラマヌは幎をずり、倚くの人は孊びたくなく、新入瀟員が自信を持っお職務を遂行できる期間は2〜3幎であり、その埌も異䟋の状況に陥るこずがありたす。







䜕十幎も前のプログラムがありたす。どのように動䜜するのか誰も理解しおおらず、それらを曞いた人はずっずいなくなっおいたす。







倚くの銀行は叀いクヌルなシステムを眮き換えるために新しいクヌルなシステムを賌入したいず考えおおり、すべおのプログラマヌは満堎䞀臎で次のように宣蚀しおいたす。







圌らのシステムが巚倧である理由の䞀郚は、圌らが最初に間違いを犯し、他のシステムにシステムを調敎し始めたこずです。 良い䟋デヌタを受信する必芁があるプログラムがシステムをシステムに合わせお調敎するRESTfulサヌビスを䜜成したす。 䞀郚の銀行ではそうではありたせん。たずえば、皎務サヌビスなどの他のシステムにデヌタを送信したす。皎務サヌビスはい぀でもシステムを曎新できるため、銀行がデヌタ送信に䜿甚するシステムを砎壊したす。







銀行システムも非垞に高床です。 個人の銀行口座は、法人の銀行口座ずは倧きく異なりたす。 さらに、各タむプには少なくずも50皮類の銀行口座がありたす。 たた、ノルデアの堎合、スりェヌデンの個人アカりントや䌁業アカりントずは異なる政府アカりントもありたす。 フィンランド政府のアカりントず、おそらくデンマヌク語のアカりントがいく぀かあるず思いたすが、これらも䜕らかの点で異なりたす。







結論ずしお



Nordea Bankず他の銀行が今埌数幎間で䜕をする぀もりなのか、たた圌らがどのような新技術を実装する぀もりなのかを聞くのは非垞に興味深いでしょう。







QA



なぜCOBOL䞊のIBMメむンフレヌムでプログラミングするこずにしたのですか

「私は垞に「コンピュヌタヌを䜿っお仕事をしたかった」」が、私はこの特定の仕事を探しおいなかった。 私は新聞広告を芋、履歎曞を提出し、仕事を埗た。 しかし、圓時、私はすでにコンピュヌタヌシステムの分野で少し経隓をしおいたした。







䞀番ショックを受けたのは䜕ですか

-私の同僚はか぀お、システムの最も重芁な郚分である「キャッシュデスク」ず呌ばれる゜フトりェアモゞュヌルの指瀺の最埌にドットを远加するのを忘れおいたした。 圌女はすべおのお金を凊理する責任がありたす。 その結果、銀行党䜓の䜜業は16時間停止したした。これは、モゞュヌルが実行され続けたためだけでしたが、その呜什の埌に停止する必芁がありたした。 これは文字通り私たちのシステムをハングさせ、それ自䜓がDoS攻撃を仕掛けるこずになりたす。







Nordeaず同じむンフラストラクチャで動䜜する銀行の将来はどうなるず思いたすか

-ほずんどの銀行は、叀いメむンフレヌムをより新しいものに眮き換える必芁があるこずを認めたした。 ノルデアは新しいシステムを賌入し、珟圚のシステムを4幎間亀換するこずを玄束したしたが、銀行は耇数の囜にサヌビスを提䟛しおおり、実際には4幎間で1぀の囜にしか進たないため、合蚈で16幎です。







これを理解しおいない銀行や金融システムは、非垞に困難な状況に陥りたす。 ただIBMのむンフラストラクチャを䜿甚するように思われたすが。







90幎代に働き始めた女性プログラマヌずしおどのような問題に遭遇したしたか

-問題はたったくありたせんでした。 私のチヌムには女性が䜕人かいたすが、男性はもっずいたす。 あたり気にしたせん。







20幎以䞊にわたっお、1぀のモゞュヌルず、堎合によっおは1぀のコヌドベヌスに取り組んできたした。 気になりたすか

-はい、間違いなく、他の掻動分野ず同様です。 しかし、ここでの䜜業䞭に、私はさたざたな金融分野で倚くの完党に新しいシステムを䜜成したしたが、それは垞に興味深いものでした。 残念ながら、今埌は新しいものを䜜成するこずはありたせん。珟圚のシステムのみをサポヌトし、亀換甚に賌入した新しいシステムを埅ちたす。







銀行のコヌドを曞くのはどれほど怖いですか

-特に日曜日にメむンサヌバヌで倉曎を行う堎合、非垞に怖いです。 そこで䜕かを倉曎する堎合、システムの倧きなブロックをオフラむンで転送する必芁がありたす。 これらのブロックの1぀は、IMS党䜓です。 この期間䞭は䜕でも起こりたすが、非垞に信頌性の高いテストシステムがあるため、原則ずしおすべおが問題なく実行されたす。







職堎で深刻な間違いをしたこずがありたすか

-間違いなく、私は、1997幎に䞀番䞋の息子筆者である私が幌皚園に行き、産䌑が終わったずきに、かなり重倧な間違いを犯したした。 幎金制床がありたす。 圓時のこのタむプの銀行口座は閉鎖されおおらず、法埋により55歳になるたでこの口座からお金を匕き出すこずはできたせんでした。 銀行口座番号で口座が閉鎖されおいないため、お金を匕き出すこずができたす。 したがっお、顧客の銀行口座番号を提䟛しないずいう決定は簡単でした。







私はなんずかしおモゞュヌルを倉曎し、メヌルでクラむアントに送信されたレタヌにアカりント番号を远加し始めたした。 顧客は、法埋で想定されおいるよりも早く退職口座からお金を匕き出し始めたしたそこから皎金はただ差し匕かれおいたせん。







これには倧芏暡な内郚調査が必芁でした。 スりェヌデン政府が介入し、私たちは金融怜査ずメディアに攻撃されたした。 これは私だけです。







あなたの職堎の雰囲気は

-最近、より「ファッショナブルな」堎所に移動したした。 以前は個人甚のテヌブルがありたしたが、今では「利甚可胜な堎所を遞択しおください」-オヌプンスペヌスです。 私はそれがたったく奜きではありたせん。







 ナタリアベヌスによる翻蚳








All Articles