• 締切済み

エンジニアに向いてないでしょうか?

文系大卒でIT業界3年目の26歳男です。SESで客先常駐をしております。 私にはエンジニアの適性が無かったのか、選ぶ業界を間違えてしまったのかと最近かなり不安になっております。 1,2年目までは保守運用をしてまして、去年の12月から今の開発業務のある現場に配属されました。3年目ですが初めて業務でプログラミング開発をすることになります。 配属されて2週間程は、とりあえずこれ読んどいてと700ファイルのソースファイルを渡され、これから改修するアプリの解析作業をしてました。言語はC#です。 今まで参考書程度のソースを読んだ経験しかなく、これだけ膨大で(ベテランSEにとっては少ないかもしれませんが)解読ができない部分が多いソースを目の当たりにして頭がパンクしてしまいました。そして、最初の1週間ほどでソースを読むことに心理的な抵抗感が出てきてしまいました。 経験スキル不足で、いまは簡単な作業しかこなせない状況です。 すでに2か月が経ち解読できるところも徐々に増えてきてはいますが、それでも処理が複雑な部分はいまだに読むのが辛く、非常に疲労感を覚えます。 この心理的な抵抗感はエンジニアとして適性不足だからでしょうか? そもそも私がSEを目指したのは、プライベートで趣味の分野でデータ収集をしてまして、そこでVBAでマクロを組んだ方が色々と効率的にできそうだなと、自分で処理を考えることが意外と楽しかったのがきっかけです。 当時の自分からしたらこんなにプログラミングで頭を悩ませるとは思いもしませんでした。今でも参考書・ネットでウーンと頭を悩ませながら学習を続けてます。 いまだにラムダ式と非同期処理が苦手な感じです。 稚拙な文章になり申し訳ありませんが、私にはエンジニアとして適性不足でしょうか?

みんなの回答

  • tachin
  • ベストアンサー率29% (136/458)
回答No.10

もしかしたら言語との相性かもしれません。 もう20年以上も前になる新人の頃、当時は某メーカの言語とCでした。 かなり頭を悩ませながら、また炎上プロジェクトにも参加させられていた時もあったので、それこそ徹夜でプロトタイプを作りながら検証して、実際に取り掛かり単体テストという一歩からが前一歩込みで仕事をしてました。 しばらくして、別の技術で仕事をしてみたいという要望が通り、VBでの作業をしましたが、生産性と開発のしやすさに驚き、以降は当時VBでもプロジェクト旺盛の時期もあり、かなりマッチングした言語だった過去があります。 また、Mochif/Xなんて言語は、今の若い方は知らないかと思いますが、C#のようなもので、これもかなり難読で参考書もほぼなく、かなり苦労しましたが、2度目はサクサクとでき、C#のプロジェクトに10年後くらいに転職した会社で、ほんの数プログラムを作った際は、「C#ってUNIXの真似事か?」と思ったほど、開発もすんなりできました。 そんなものかと。 ちなみに、オープン系でステップ数はあまり無意味な話と感じます。COBOLなら理解できますが、オープン系であまりにも多いステップ数は、下手なプログラムとも思われかねないですし、ステップ数で測る事自体、どうにも?と感じます。元々のつくりおかしくないですか?。

morgun1256
質問者

お礼

回答ありがとうございます。言語との相性ですか。最初の研修ではJavaをやりましたが、あまり苦労したことは無かったですが。。 この機会に違う言語をさわり始めてみます。

  • chiychiy
  • ベストアンサー率60% (18536/30883)
回答No.9

こんにちは 向き不向きはこの内容だけではわかりません。 どんな会社なのか(大手か下請けか・・・) 判りませんが >1,2年目までは保守運用をしてまして、去年の12月から今の開発業務のある現場に配属されました。3年目ですが初めて業務でプログラミング開発をすることになります。 これが一番問題ではないでしょうか? 大卒で入ってからの、作業の流れが遅いと思います。 資格などは会社から言われてとってますか? 今の段階ではSEではなく、プログラマーですよね? 適正かどうかよりも 入った会社の体制が疑問です。

morgun1256
質問者

お礼

回答ありがとうございます。勤めてるところが小さな会社だからか分かりませんが、中々開発業務に入れる現場がありませんでした。 今の現場でスキルを身につけつつ、転職しようかと真剣に考えております。

  • cse_ri3
  • ベストアンサー率25% (165/640)
回答No.8

回答追加。 データ分析を専門で行う会社もあるよ。 名目はSEだったけど、仕事はSQLを毎日コーディングしてました。 エクセルでのデータ解析もあるので、好きならそういう会社を目指すのもありです。

morgun1256
質問者

お礼

回答ありがとうございました。 在籍している会社は上流工程に関わる機会があまり無い会社なので、おっしゃる通り転職も考えております。 今でも時間があるときはデータを分析して色々やってるのでその仕事も楽しそうですね。 あまり考えたことが無かったです。ありがとうございます。

  • cse_ri3
  • ベストアンサー率25% (165/640)
回答No.7

昔から文系のSEはいましたが、保守やってたりCと格闘するようなバリバリの開発現場の人は、この業界にそこそこ長かった私でも始めてです。 配置転換を、訴えましょう。 文系のSEさんでよく見かけたのは、お客さんとの折衝です。 つまり、上流工程。 もし質問者さんの会社が上流工程を手掛けていないのであれば、上流工程をする会社に転職を目指しましょう。

  • yabetomo6
  • ベストアンサー率42% (6/14)
回答No.6

結論から言えば700ファイルのソースを渡して理解しろといった上司が悪いと思います。何か関係するドキュメントがあれば探してください。あなたがエンジニアの適正がないということではありません。そこで対策のご提案です。結局は設計を逆にたどることですが。。 1.まず全体観をつかむ  何を目的とした処理で、入力、出力は何か。処理頻度、形式(オンライン、バッチ、計測制御など) 2.どのようなサブシステムから構成されているか 3.全体としての処理の流れあるいは画面があれば画面遷移とそのトリガーはなにか、オンラインなら遷移図を書く 4.サブシステムの中での処理の流れと画面遷移 5.もし計測制御で他のハードウェアとの連携があればどうつながってどのように計測、制御しているか 6.メールやメッセージを出す、アラームを出すなど外部とのやり取りがあればそれも条件、誰に、いつ、などを調べる。 以上、フローチャートや遷移図など図を書いて理解してください。

morgun1256
質問者

お礼

回答ありがとうございます。 残念ながらドキュメント類が殆ど無いです。。 ソースコードにコメントが沢山あるので、そこからイメージを掴むしかなさそうです。 全体像を掴めるようにフローチャートなどを書いて再トライしてみます。

noname#252888
noname#252888
回答No.5

これだけでは何とも言えないかも。。。 そもそもですけれど、 700ファイルもあるソースを渡されて「読んでおけ」なんて仕事はだいぶ乱暴です。 これがソースではなく設計書なら起こりえます。 ソースだけ1週間も延々と読んでいたら、そりゃ誰でも病むよ。

morgun1256
質問者

お礼

回答ありがとうございました。 3日目あたりから段々辛くなりました。 この業界にいたらソースを読む機会なんて沢山あるから、まあ何とか耐えて読むしかないですね。

  • agehage
  • ベストアンサー率22% (2752/12072)
回答No.4

他人のソースを理解できる人はいない ↑ エンジニアならまずこれを理解しましょうw

morgun1256
質問者

お礼

回答ありがとうございました。他の回答者様もそうおっしゃられてるように、そもそもソースコード解析なんてそういうものなんですね。現場の方々を見るとみんなが完璧では無いにしても要所を抑えて理解できているように感じられたので、ちょっと泣きそうでした。

回答No.3

外資系企業で中間管理職をしています。 技術系で、まだ一応そこそこコードは書けます。 あなたは人の書いたコードを読んでいるようですが、 そもそも私は人のコード、特にCとかPerlなどは 読む気になりません。あなたのように疲労感が出るでしょうね。 幸い、もう複雑なコードは読まなくていいで助かりますが。 疲労感の理由の1つは、まずCもperlも「読みやすさ」というのを 重視したプログラムではないこと。 簡単に書けるのはいいのですが、他の人が読んだ時に すぐにわからないから。逆に Pythonとかは、書いた人以外の人が読んでも、わかりやすい。 読みやすさを重点においた言語です。 しかもプログラムは、アルゴリズムやアーキテクチャは 人それぞれ考えます。汚いコードだと、そういうのも 全くわからない。 エンジニアであれば、自分でアルゴリズムやアーキテクチャを 決めて、プログラムを書くのが大好きなはずです。 つまり、これがあなたがVBAを使って趣味でやっていたときのことです。 逆に、人のプログラムを読んで楽しいっていう人は あんまりいないと思いますね。 >私にはエンジニアとして適性不足でしょうか? 全然。みんな同じような悩むを持っていると思います。

morgun1256
質問者

お礼

皆が多かれ少なかれ同じことを思っているですね、安心しました。 それでもお仕事を上手く回すためにはある程度は耐性が無いとどうしようもないので、自分なりに理解しやすい解析方法を模索してこうと思います。回答ありがとうございました。

  • Nobuta250
  • ベストアンサー率34% (122/353)
回答No.2

エンジニアの適正と、現在の職場が合っているかとは別物だと思います。 新規開発主体でプロジェクトが進行していくような現場でしたら個人的にやっていたVBAの延長線上でプログラミングに磨きを掛けられたと思います。 所詮他人の作ったコードなんかちゃんと理解出来ません。だって考え方も頭の構造も違うんだから、当然アプローチも何もかも違ってきます。 今のようなプロジェクト方式になる前の凄腕プログラマが書いたゲームのソースなんて、本人以外理解出来ないですよ。 プログラムのメンテに適する人材と開発に適する人材とは別と思います。

morgun1256
質問者

お礼

回答ありがとうございました。アプリ開発したエンジニアがかなり出来る方らしく、全部1人で書いたと聞きました。他人のソースコード読むのってやっぱ難しいんですね。

  • oboroxx
  • ベストアンサー率40% (317/792)
回答No.1

そうとは言い切れないと思います。 私もラムダ式と非同期処理は苦手です。 また私はC言語で書かれたソースの印刷物を渡されたことがありますが、読めませんでした。 こんな私でもソフトを作れるのだから大丈夫だと思います。 私はソースをコンパイルしてデバッグ操作で処理を追いながら、データ確認をしたりすると、読みやすかったりします。 また、わからない部分だけを抜き出して、新しいプロジェクトを作って、そこにコピペをして、ダミーのデータが必要なら用意して、どういうデータだとどういう動きをするのかを見るのも手だと思います。 ソースだけを眺めていてもわからないことが、デバッグ操作でわかることがありますよ。 がんばってください!

morgun1256
質問者

お礼

回答ありがとうございます。 改修対象のアプリは開発環境ではデバッグが出来ないので中々しんどかったです。 やっぱり動かす方が見やすいですよね。自分の開発環境で手を動かしながらやってみます。

関連するQ&A