
試行錯誤を積み重ね
開発する面白さ
私の仕事内容
主にサーフェイス系CAMの開発を担当しています。
当社のCAMシステムでは自由曲面から工具経路を直接計算する方式を採用しているため、高精度寄りの経路を得られることが特色となっています。
自社開発の曲面ライブラリを用いているため、ライブラリの内部から、それを用いた経路の処理までを開発しています。
ライブラリの開発では、バレルエンドミルなどの新しい種類の工具を使えるようにしたり、経路の開発では、荒加工で工具の負荷を一定に保つことで効率的な加工を行えるようにしたり、などの仕事を行ってきました。

キャリアステップ
2010年
新卒入社。CAD開発部プロダクト開発課に配属。CG Press/Mold Designの開発を担当。
2011年
CG CAM-TOOLの開発を担当。
2012年
CAM開発部CAMエンジン課に異動し、サーフェイス系CAMの開発を担当。現在に至る。
とある一日のスケジュール
8:50
出社、メール確認
その日に行うタスクを確認します。
9:00
開発作業
CAM-TOOLのバージョンアップに向けた開発を行います。
11:45
ランチ
同僚と会社近くの中華屋さんに行きました。CAM開発部では12時より少し早めの昼休憩にしていますが、周りの会社も少し早めのところが増えてきたので、お店は結局は混んでいます。
13:00
チームでのミーティング
隔週のミーティングでは開発の進行状況や問題点について話し合います。
15:00
不具合対応
技術担当から報告された不具合を確認し、対応を行います。
18:30
終業
この日は運動がてら、家まで散歩しました。
CGSに入社を決めた理由
学生のときに当社の開発アルバイトに参加し、会話やコミュニケーションが印象的でおもしろい社員さんがいて、一緒に働いてみたいと思い、この会社を選びました。
アルバイトでは立体設計に使われる3Dモデラ―のSOLIDWORKSを利用してプレス金型のモデリングの補助機能を開発し、具体的な仕事内容のイメージができました。
C++を用いたプログラミングには学生の時点である程度習熟しており、また趣味としてコンピュータグラフィックスや数値計算を学んでいたので、知識ベースともマッチしていました。
仕事の面白さとやりがい
試行錯誤を積み重ねて目的を達成するサイクルがおもしろいです。
たとえば、CAMシステムに入力される曲面はモデリング誤差を含むため、拡大してみると離れや出っ張りがあります。
このような曲面に対して要求精度を守りつつ滑らかな経路を求めなければなりません。
企画担当とも連携しながら問題の抽出と改善を繰り返し、適切な経路を検討していきます。
開発したシステムを実際にお客様に使ってもらっているとやりがいがあります。

苦労話、失敗談
数十年にわたって蓄積されてきた自社開発のコードベースは設計が古い箇所も多いため、新しい言語仕様に合わせて改善が必要となります。バージョンアップ開発と並行して、改善を少しずつ行っています。
当時の開発者が退職している場合、ヒアリングすることができないため、要求を満たすように新しく書き直すことになりますが、検証が不十分で多くの不具合が発生してしまった時は、終息させるのに苦労したことがありました。
将来の目標
これまでに想定していなかったようなアイデアの創出や新たな解決策の提示ができるよう、当面は、より多角的な視点で数学力を向上し、人に分かりやすく説明できることを目指していきたいと思います。
現在は部署内で機械学習関連の勉強会を主催しており、有志の方が参加してくれています。

これから入社する方へのメッセージ
当社へご関心をお寄せいただきありがとうございます。
CAD/CAMシステムの開発を担当する場合は、機械加工や幾何学の知識が必要となる場合があるので、そういった知識がある方はより面白く仕事に取り組めると思います。
知識がない方でも、研修時に説明されますし、作業時にも必要な説明を行うので、仕事上で困ることはないと思います。
興味を持って取り組んでいただけると幸いです。
オフタイム①
時々ですが、運動がてら家まで散歩して帰ります。2~3時間程度の行程です。
目黒川沿いを北上していきます。桜並木なのでお花見シーズンは混みますが、それ以外は快適です。
途中で雨が降ると厄介なので折り畳み傘は常備しています。
次の写真は恵比寿駅の付近です。

オフタイム②
趣味の数値計算としてレイトレーシングをゼロから作って遊んだりしています。
物理世界で写真を撮るとき、太陽などの光源から出た光が物体に様々な方向で繰り返し反射し、カメラに入ってきた光がセンサに記録されます。
これを逆向きにシミュレートするのがレイトレーシング法で、写実的な画像を計算で求めることができます。
次の画像は、反射・透過の度合いによってプラスチック・金属・鏡面・ガラスのような物体を表現しています。
