インプットに加えて社内実践の場を活用し、未経験からプログラミングを習得

プログラミングを学び始めたきっかけを教えてください。
最初はプログラミングに対する強い興味から始まりました。大学生のころは応用化学を専攻していて、プログラミングを含む情報の分野にはかなり疎かったんです。「製造部のCAMプログラマー」という肩書きはありつつも、実際はソフトウェアを軽く扱う程度。自分でコードを書いて実装するまでのスキルはありませんでしたね。
しかし、弊社は拡張性が用意されている市販のソフトウェアを選定し、社内でカスタマイズすることで、操作に習熟していない社員でも使えるようにしていますので、製造部にいたころからプログラミングは身近なスキルとして感じていました。困っていることを解決したり、より便利に変えたりする手段であるプログラミングに魅力を感じ、「自分もやってみたい!」と思ったことが、学習を始めた大きなきっかけです。
具体的に、どのように学習を進めていきましたか?
独学と、社内で提供された学習機会の活用がメインです。弊社は自発能動的な学びを推進する社内風土があることに加え、当時は社内のシステムエンジニア不足も課題でした。そういった背景から、「プログラミングをやってみたい」という僕の声に耳を傾けてくれたんです。
社内で購入した書籍でのインプットもおこないましたが、どちらかというと実践を伴う学習機会が多かったですね。既存社内アプリの追加機能の実装や改善をおこなうなどして、業務を通して学びを深めていきました。
それぞれのプロジェクトは個人ではなく、チームで動かしていくことがほとんどです。必然的に開発するプロダクトの規模も大きくなりますし、メンバーとのコミュニケーションも活発になります。自分ひとりでは経験できない規模での実践を積み重ねたことで、抽象的だったプログラミングの概念がより具体的になりました。
“現場にいたからこその付加価値”を提供できることがやりがいに

プログラミングの知識は、現在の業務にどのように活きているのでしょうか?
プログラミングスキル自体は、『COMlogiQ』の開発業務にて毎日のように使用しています。具体的にはVisualBasic、C#などの言語を活用することが多いですね。現在メインでおこなっているのは、『COMlogiQ』の追加機能の開発や既存機能の改善です。
しかし、「プログラミングスキルさえあればプロダクトの開発業務が進められるか」というと一概にそうとは言い切れない部分もあると思っています。
特に『COMlogiQ』はあらゆる部品加工工程を自動化するためのプロダクトなので、プログラミングの知識だけではなく、機械加工や製造業に関する知識がないとどうしても成り立たないケースがあるんです。7年間製造部でCAMプログラマーを経験してきた知見と、新たに学んだプログラミングの知識を掛け合わせることで、より現場のニーズに合ったプロダクト機能の開発ができていると実感しています。
CAMプログラマーの経験がある高木さんだからこそできることといえますね!現在の業務を通して、どういったときにやりがいを感じるのか教えてください。
自分の開発内容が反映され、製品としてできあがったときです。『COMlogiQ』では既に何千種類もの製品を作れる機能が備えられてはいますが、その対応バリエーションが増えたときはすごくやりがいを感じます。
製造部のメンバーとして「こんな機能があったらいいな」「こんな製品があると喜ぶだろう」と考え、試行錯誤しながら開発にあたっているので、実際に形になるのは感慨深いです。
高木さん自身、プログラミングを学ぶメリットはどんなところにあると感じていますか?
大きく2つあります。1つ目は、課題に対する解決の手段を組めるようになるところです。
以前は社内システムの不具合を見つけても報告するだけでしたが、スキルの向上により、現在は自分で修正や機能改善ができるようになりました。
スキルが向上するにつれてより複雑な課題も解決できるようになり、プロダクトの進化にも貢献できる機会が増えました。従来以上に価値のある製品を顧客に提供できることは、プログラミングを学ぶ醍醐味だと感じています。
2つ目は、世の中の変化を楽しめるようになるところです。もしプログラミングを学んでいなかったら、今話題のChatGPTも「こういうツールがあるんだな」くらいにしか思っていなかったと思います。現在は生成AIを使用する機会や、プロンプトエンジニアリングを意識することが増えたこともあり、以前よりキャッチアップするようになりました。
「世の中の新しい技術ってこんなに革新的なんだ」「こんな使い方もあるんだ」と楽しめるようになったのは個人的に大きなメリットです。
大事なのはプログラミングを“手段”として何を実現したいか

最後に、これからプログラミングを学ぶ方に向けてメッセージをお願いします!
たとえ畑違いのキャリアであっても、プログラミングを掛け合わせることで新たな価値を発揮できる可能性があることに目を向けてほしいなと思っています。思わぬ経験やノウハウがプログラミングとつながり、活躍の場が広がるかもしれません。
僕の場合は、CAMプログラマーの経験とプログラミングの掛け合わせがプラスに働きました。生粋のプログラマーの場合は、情報や条件を与えられて初めて実装に踏み切れますが、機能面の細かいニーズや現場で求められる具体的製品に関しては、製造部にいたからこそ考えられる部分だと感じています。
また、プログラミングを学ぶ動機を明確にすることも大切ですね。僕は「子どもたちの未来のために、世の中で役に立つものを作りたい」というモチベーションで学習を続けていますが、やはり「なんのためにプログラミングを学ぶのか」という目的は重要です。プログラミングを手段として、実現したい未来に向かって前進する人が増えれば良いなと思います!