(この記事は15分程度で読めます)
こんにちは、技術部のすーみんです🌈✨
推しが増えたり、案件の難易度が上がって日々鍛えられたりと、
充実したアルト・エンジニアライフを送らせてもらっています。
(ちなみに最近のアルトワイズの初音ミク担当(私)は、他の音声合成キャラクターにもお熱です…)
さて、このたびOracleが公開しているJava試験の三階級を制覇したので、合格体験記を執筆しました。
Java認定試験を受けようと思っている方の一助になれば嬉しいです。
目次
受験動機~キャリアアップを目指して!~
Oracle Java試験ってなに?
短期集中!どんな対策をしたの?
1.参考書で基礎固め
2.模擬問題で理解度確認
3.生成AIを活用し、内容の理解を深める
4.必要に応じてJava API リファレンスを確認する
いざ本試験にチャレンジ!
試験はぜひテストセンターで
試験は事前対策がモノを言う
結果は……?
挑戦を後押しするアルトワイズの手当たち
受験料キャッシュバック!資格チャレンジ手当
合格報奨金ボーナス!!資格手当
終わりに-この先に向けて-
受験動機~キャリアアップを目指して!~
私は、エンジニアとして9年目で、C#をメイン言語としたWEBシステム開発業務に4年以上携わっています。
その中で、ゆくゆくは上流工程にも携わったり、リーダーとして後進育成に携わったりしたい!というキャリアを考えています。
後進育成のためにも、オブジェクト思考について分かりやすく説明する力を育みたいなと思いました。
そこで今一度オブジェクト指向言語の原理原則からしっかりと学び、設計力や実装力を向上させる必要があるのでは?と考えるに至りました。
C#はオブジェクト指向言語の一つで、Javaに倣った文法や機能が多くあります。
MicrosoftのHPでも、
『C# と Java には多くの類似点があります。 C# を学習すると、Java でのプログラミングから得た知識の多くを応用できます。』
という文言が添えられるほどです。
また昨今は、JavaScriptや、それをベースとしたVue.js、Reactなどのフレームワーク、Pythonの台頭によるモダンな記法が増えてきている、と感じています。
Java認定試験では、このモダンな記法の文法や考え方の一つである「ラムダ式」が学習できるようでした。
そこで、Oracle Java認定試験の学習を通じて、C#とJavaをリンクさせつつ、オブジェクト指向言語の深い理解を目的とし、私自身のキャリアとスキルをより引き上げることを目標として学習をスタートさせました。
Oracle Java試験ってなに?
正式名称は「Oracle認定Javaプログラマ」と言い、Oracleが主催するJavaに関する知識や技術を問う国際的なプログラミング資格です。
Silver と Gold は国際資格となっており、国外でもJavaプログラマーとしてのスキルを証明することができます。
SilverとGoldにはJava 11バージョンとJava 17バージョンがあり(※)、合格すると受験したバージョンの認定資格が与えられます。
それぞれの詳細な説明や最新情報は、Oracle 認定 Javaプログラマの公式ページをご確認ください。
下記に、今回受験した試験の概要をまとめます。
このように、難易度が体系的に設定されており、受験者自身のスキルに応じて段階的にチャレンジすることができます。
※Java 6~8バージョン試験もありますが、あくまでJava 11認定にアップグレードするための試験です。新規受験には、Java6~8バージョンのGoldを獲得している必要があります。
短期集中!どんな対策をしたの?
仕事と趣味を両立しようとすると、どうしても日常的に時間を捻出するのが難しいと思います。
そこで私は、短期間で集中的にインプットとアウトプットを行うため、下記のような対策を行いました。
1.参考書で基礎固め
2.模擬問題で理解度確認
3.生成AIを活用し、内容の理解を深める
4.必要に応じてJava API リファレンスを確認する
一つづつ見ていきましょう。
1.参考書で基礎固め
それぞれの階級(Bronze, Silver, Gold)に合わせた参考書を購入し、必要に応じてノートにまとめ、理解できるまで何度も読み込みました。
この参考書の購入には、アルトワイズの手当の一つである【スキルアップ手当】制度を活用しました。
スキルアップ手当とは、自己研鑽のために使用した費用を、毎月5,000円まで手当として支給する制度です。
購入した書籍はエンジニア本人のものになるので、心置きなく本に書き込んだり、しおり代わりに折り曲げたりして利用することも可能です。
参考書は決して安くないので、この制度には大変助かっています。
2.模擬問題で理解度確認
この本には、巻末に「模擬問題」がついています。
模擬問題は、実際の試験のレベルを想定して作られており、中途半端な理解では太刀打ちすることが難しいものです。
この模擬問題を、実際の試験時間に合わせて解き、その後『正解』『正解(勘)』『不正解』の三つに分けました。
そして、特に『正解(勘)』『不正解』の問題に対して、該当する分野の解説を読み、必要に応じて3.の対策を行いました。
実は、このような対策をしている中で、Silverに挑戦する直前に
「このままではまずいのではないか」
と感じる点がありました。
Silverでは、インタフェースと抽象クラスの違いや役割、特徴などを正確に理解している必要があるのですが、その理解が危うく、3日前にしてギリギリ合格ラインに届かないという場面があったからです。
しかし、私には過去に資格取得勉強で似た経験をしています。その際は、諦めずに努力した結果、想定より高いスコアで合格したという成功体験もあります。
そのため、最後まで諦めない気持ちを持ち続けました。
(本番の試験同様、時間を測って挑戦。赤い部分は過去に間違えた部分。理解ができたのかそれともまだダメなのかの棚卸しにもなります。)
3.生成AIを活用し、内容の理解を深める
独学では、どうしても理解がおろそかな部分が出てきてしまいます。
そこで今回は、試験対策にGoogle Geminiを活用しました。Google Geminiは、Googleアカウントがあれば誰でも無料で使うことができます。
Google Geminiは、下記のような場面で活用しました。
- 理解がおろそかだった点の補足説明
- 自己理解が正しいかどうかの確認
- 参考書の解説の補助
- ソースコードの解説や例示
- 練習問題
とくに、「自分の理解を自分の言葉で確認する」というアウトプットも行うことで、インプットとアウトプットを同時に行うことができたと思います。
質問だけでなく、自分の理解が合っているのか、誤っているのであれば何が違うのか、という点を効率良く学習できました。
生成AIを活用した試験対策の話は、また別の記事でご紹介します。
4.必要に応じてJava API リファレンスを確認する
生成AIは優秀ですが、稀に参考書と生成AIの解説が同一かどうか判断しかねる場面が出てきます。
そのような時には、Java APIの公式リファレンスを適宜参照し、該当するトピックについて調べるようにしました。
=====
参考までに、私が各階級の受験までに要した勉強時間を記しておきます。
人によって習熟度が異なるため、受験計画の目安にしてください。
Bronze:約5~10時間(1.0h / 日)
Silver:約40~50時間(1.0h / 日)
Gold:約60~70時間(4.0~5.0 h / 日)
短期集中を掲げて対策を行いましたが、Bronze, Silver, Goldと階級が上がるごとに、やはりインプットに必要な時間が増えていることが分かるかと思います。
いざ本試験にチャレンジ!
試験はぜひテストセンターで
Java認定試験は、テストセンターまたは自宅のPCを用いて行うCBT形式で行われます。どちらの環境でも受験に追加費用はかかりません。
私は、特段の事情がない限りはテストセンターでの受験を強くお薦めします。
なぜなら自宅受験には、受験のための事前準備があったり、受験中の制限事項が多かったりするため、学習以外の部分で苦労する可能性があるからです。
一方、専門の環境が整ったテストセンターは、受付を済ませれば受験に集中できます。
このような理由から、テストセンターを予約して受験することをおすすめします。
試験は事前対策がモノを言う
試験は三階級全てで選択問題ですが、いずれも深い理解が要求される問題が多いです。
選択肢の数は問題によって変化し、正解を複数選ぶ問題も混ざっているため、やはり中途半端な理解では太刀打ちできないと感じました。
問題は多くの場合、次のような問題が出題されます。
- ソースコードを読み実行結果(出力/コンパイルエラー/例外など)を答える問題
- ソースコードが期待通りに動くコードを選ぶ問題
- 構文や記法が正しいものを選ぶ問題
- 命題を満足する説明を複数選ぶ問題
このうち、出題内容の大半が、ソースコードを読んで実行結果を答える問題です。
このソースコードを読んで答える問題には注意が必要です。
実際のモニターで表示される問題のコードは、IDEのように色分けされていないのです。
下記の写真は、モニターに表示される問題のイメージです。
写真の通りソースコードがかなり読みにくく、机上デバッグの速度が求められます。
試験対策の部分でお話した通り、ソースコードの机上デバッグに慣れることは、有効な対策だと思いました。
結果は……?
Bronze
Programmer Ⅰ(Silver)
Programmer Ⅱ(Gold)
🎊全て一発合格!🎉
挑戦を後押しするアルトワイズの手当たち
Java認定三階級制覇🎊!
このように日々の努力の結果が形として現れる瞬間は、何度味わっても病みつきになります。
このような挑戦を後押ししてくれたのが、アルトワイズの『資格チャレンジ手当』『合格報奨金制度』たちです。
受験料キャッシュバック!資格チャレンジ手当
アルトワイズでは、多くのITエンジニア関連試験において、合格するとその受験費用を全額負担します。つまり一発合格すれば自己負担一切無し!
特にベンダー試験は高額になりがちなので、お財布にも優しい制度となっています。
もちろんJava認定試験も対象なので、筆者は実質自己負担無しでJava Goldまで制覇したことになります。
写真のように、Goldともなると、受験料だけで税込約42,000円もかかります。
これが自己負担なしになるのは本当にありがたい!!
合格報奨金ボーナス!!資格手当
受験料のキャッシュバックだけでも大変ありがたい話ですが、なんとJava試験を含む民間資格の一部の試験では、合格時に一時金として報奨金が出ます!!(国家資格は一時金ではなく、給与に上乗せされる資格手当として毎月支給されます!)
Java試験においては、Bronze, Silver, Goldの各階級に合格すると、それぞれ報奨金が出ます。
これらの制度は、エンジニアのスキルアップをサポートする、まさにアルトワイズならではの手当だと思います。
先述の「スキルアップ手当」もそうですが、このように制度が整っているからこそ安心して学習に取り組めたと感じています。
終わりに-この先に向けて-
2年前にも、『データベーススペシャリスト合格体験記』を書いたタイミングでも触れさせていただきましたが、
『正しい努力は実を結ぶ』
『その努力をサポートしてくれる環境がアルトワイズにはある』
というのは当時から変わらないです。
一方、この記事で触れたアルトワイズの各種制度は、単にエンジニアに資格を取らせることが目的ではないと私は思います。
資格試験などを通じて、エンジニア一人ひとりが安心してスキルアップに励み、より市場価値を高められる環境のための制度だと強く感じています。
事実、このJava認定試験を通して学習したことで、C#の理解も深まりました。
それは今参画している現場で、「ちょっとわかりにくいソースがある」と現場の方に言われていた部分の読解に、時間を要さなかったことで強く実感しました。
そのソースはC#で書かれており、委譲(デリゲード)とラムダ式を多用したソースでした。委譲はJavaの関数型インタフェースと類似する機能です。
以前も似たソースに遭遇したことがありますが、その時と異なり、処理の流れやソース一つ一つの動作を、明確にイメージできたのです。
これはまさしく、資格試験勉強の効果が直接現れた出来事だったなと思います。
スキルアップに終わりはありません。
私は、上流工程で活躍する未来を描き、この試験を受けました。
システム開発は、これ以外にもインフラやフロントエンドなどに裾野が広がっています。また昨今はクラウドを用いた開発も主流となってきています。
そこで今後は、AWS認定でまだ勉強していない分野にフォーカスを当てつつ、リーダーとして必要なスキルも一緒に磨いていきたいです。
今後も、
「上流工程にも携わったり、リーダーとして後進育成に携わったりしたい」
という目指すキャリアに向けて、自己研鑽に励んでいきます。
以上、「手当をフル活用してOracle Java認定を制覇した話」でした。
あなたもアルトワイズで一緒にスキルアップをしていきませんか?
本文:すーみん
挿絵:木口