Developer Journey は、世界各地の多様なデベロッパーを取り上げる月次シリーズであり、エキスパートになる過程で経験した課題、機会、成功について語ってもらいます。毎月、世界中のデベロッパーにスポットライトを当て、デベロッパーが活用している Google ツールや構築しているプロダクトを紹介します。
今月、何人かの Google デベロッパー エキスパートと話をして、Google Developer Student Clubs リードから各技術分野の専門家になるまでの道のりについて詳しく聞きました。
ムンバイ、マハラシュトラ州、インド
Google デベロッパー エキスパート、機械学習
GDSC、ムケシュ・パテル工科大学、管理およびエンジニアリング - ムンバイリード同窓生(2021〜2022 年)
Google Summer of Code の組織管理者 + Ivy の機械学習リサーチ エンジニア インターン
国際情報技術大学ハイデラバード校のリサーチ インターン
私がリードとして過ごした毎日は学びの時間でしたが、印象に残ったのは、GDSC プログラムに基づく総合的な学習の機会でした。たとえば、私は AI を専門としていますが、コンテストを主催するための複雑なウェブアプリの監査と作成を手伝うことになるまで、ウェブ開発を学ぶ必要を感じたことはありませんでした。また、新しい技術的スキルをできるだけ速く吸収する方法を学ぶこともできました。これは、時間がたつにつれて、信じられないほどの価値があることがわかりました。また、ソフトスキルの重要性を学んだおかげで、コミュニティとコミュニケーションする能力が向上しました。専門家として、コミュニティを管理することは重要であり、このプログラムによって得られたリーダーシップ スキルは、コミュニケーション、ロジスティクス、チーム作りについての理解を深めるのに役立ちました。
Google Developer Student Clubs(GDSC)リードとして、情熱を共有する人々や潜在的なメンターとのネットワークを築くチャンスに恵まれましたし、こうした人々は、私の成長にとって大きな助けとなり、私が技術的スキルを構築する際も、ソフトスキルを向上させるときも、サポートしてくれました。また、大勢の人の前で話したり、コンテンツを開発したり、チームを管理したりすることに加えて、何がコミュニティを動かすのかについて深く理解する機会を得ることができました。GDE にとっては、コミュニティのニーズと要望を把握することが重要になります。GDSC プログラムは、これらの指標を草の根レベルで測定する方法を教えてくれました。私は、GDSC コミュニティの一員として、最もスキルの高い献身的かつプロフェッショナルな、そして最も重要なことですが、謙虚な人々と働くことができました。このプログラムにより、すばらしい人々と交流し、時間をかけて友情を築くことができました。
私はさまざまなプロジェクトや取り組みでかなりの数の Google ツールを使用してきました。これには、ハッカソンで使用した Firebase、Flutter、Android が含まれますが、それらに限定されません。また、いろいろな場所でのプロジェクトやインターンシップ中に、スケーラブルなバックエンド インフラストラクチャを開発してホストするために Google Cloud Platform を利用しました。しかし、私が最も使用してきたツールは TensorFlow です。
ML の専門家として、TensorFlow と Keras のおかげで、数日分の作業を、場合によっては、数時間または数分に短縮することができました。TensorFlow と Keras は、新しい前進のために絶えず革新しながら、可能な限り最もオープンで民主的な方法を通じてエンドユーザーをサポートしています。私は、このサポートを常に高く評価してきました。私が Keras を気に入っている最大の理由の 1 つは、誰でも心から喜んで迎え入れるすばらしいコミュニティあることです。
私は過去にいくつかのプロジェクトを手がけてきました。その中で最も注目に値するのは、個人的に TranscribeMate と呼んでいるアプリケーションでした。たとえば、講義を受けていて、教授がいつもより速く授業を進めているため、ノートを取るのが難しいとします。TranscribeMate(Flutter、Firebase、MLKit で構築しています)をメモ取りアプリケーションとして使用すると、OCR テクノロジーにより、ただの黒板の写真からメモを書き起こし、その上に注釈を加えて、後で使用するために保存することができます。これは、私が大学の授業のために開発したアプリケーションでしたが、もう少し調整を加えて、より一般的なタスクのために個人的なデバイス上でも利用しています。
Bard を使い始めてからしばらく経ちましたが、ブラウザ上で欠かせない存在になっています。Bard は、私がランダムに尋ねる質問に答えてくれたり、Python 関連の問題で助けてくれます。従来の検索方法を使用した場合は何時間もかかるような作業を、数秒で終わらせるのに役立っています。私は、自分の研究で取り組んできたいくつかのプロジェクト、Ivy のプロジェクト、そして Keras チームで Bard の助けを借りてきました。今後の進展に期待してください!
学ぶには、新しい経験を求めましょう。狭い領域に閉じこもって働いても、学ぶことはできません。さまざまな技術の実用的な知識を一度に活用することで、多様で多面的な問題解決アプローチが可能になります。システムの最適化がはるかに明確になり、より良いコードを記述し、スケーラブルなシステムを簡単に設計する方法をしだいに学べるようになります。最後のアドバイスは、自分に合ったコミュニティを見つけることです。情熱を共有する人々を探して、話し合い、開発しているものに関するメモや記録を共有しましょう。気後れして無理だと思うかもしれませんが、とにかくやってみてください。まずは、近くのイベントに一度参加することから始めましょう。それができたら、2 つ目に参加しましょう。そうしたら、イベントで質問してください。共同学習の力は計り知れません。
Veronica Putri Anggraini さん
ジャカルタ、インドネシア
Google デベロッパー エキスパート、
Android GDSC、スマラン州高等専門学校、リード同窓生(2017 年)
Google デベロッパー グループ
Women Techmakers Ambassador
eWIDEPLUS のソフトウェア エンジニア(Android)
GDSC を通して、Android テクノロジーについて多くのことを学び、Android プロジェクトの開発を実践し、メンバーのためにワークショップを毎週開催しました。このプロセスは、私の技術的なスキル、文章力、問題解決能力、そして人前で話す技能をまとめて向上させてくれました。5〜10 人の小さなグループ ワークショップで学生としてプレゼンテーションを行うことから始め、1,000 人の前でスピーチするようになりました。これは、GDE になるために必要な条件の 1 つでもありました。
いろいろなことを調べてみることで、サンプルアプリのポートフォリオを手に入れることができました。このおかげで、まだ学校にいる間にフリーランスのプロジェクトを開始することができました。その目的は、卒業したときに産業界に飛び込む準備ができているようにすることです。私は、モバイル開発のカリキュラム開発者およびトレーナーとしてキャリアをスタートさせました。驚くかもしれませんが、Android 技術について話し合うテックイベントで講演したとき、仕事のオファーを受けました。イベントの終了後、CEO がすぐに私に役職を提示しました。
私は Jetpack Compose でさまざまなことを試しています。今は、CameraX、AndroidX ライブラリ、Google アナリティクス、Maps API をよく使っています。
CameraX は、カメラリソースを自動的に管理し、不要なバックグラウンド作業を回避するので、パフォーマンスが向上しました。私のお気に入りの 1 つです。
今の会社では、デジタルバンク アプリ プロダクトをネイティブに構築しています。これにより、ユーザーは、検証済みのオンボーディング プロセスとして Liveness を使ったり、QRPay、パーソナライズされたプロモーション キャンペーン、さらに、私たちが Google ツールで開発するその他の金融サービスを利用したりできるようになります。
多くの課題の中でとりわけ重要な問題に取り組む経験を積みましょう。一貫して学び、行き詰まったときに簡単にあきらめないことが大事です。一言でいうと、「困難に立ち向かう人」になってください。
1 人で学ぶよりも、誰かと一緒に学ぶ方が楽しいことを知っておく必要があります。コミュニティに参加して必要なものをすべて学び、ネットワークを広げましょう。
Anubhav Singh さん
プラヤーグラージ、インド
Google デベロッパー エキスパート、Google Cloud
GDSC、ネタージ・サブハッシュ工科大学コルカタ校、リード同窓生(2019〜20 年)
GDG Cloud Kolkata 主催者および TFUG Kolkata 共同主催者
Dynopii の共同創立者
Google Developer Student Clubs リードの主な役割は、周りの人たちが一緒に学ぶことで成長できるようにすることでした。私の場合、さまざまな分野でクラブのメンバーを導く役割をいつの間にか担っていることが多々ありました。技術的なトピックに関する知識を共有するセッションを開催したり、メンバーが直面している課題を克服するためにプロジェクトのコードを詳細に検討したり、後で確認できるように動画やコンテンツを作成したりする場合もありました。
このような活動を行うことで、人前で話すスキル、メンタリング、そして障害につまづいている他の人たちを助ける方法を学びました。こうしたスキルは、Google デベロッパー エキスパートとしての役割を果たす上で重要であることは明らかです。
GDSC リードになることで、コミュニティの構築に向ける情熱と同じくらいの熱意を持ってチームを率いていくことができました。GDSC リードになると、たくさんのすばらしい人々とつながることができます。コミュニティ自体は非常に多様で活気に満ちています。GDSC リードとしてクラブのワークショップを企画していたとき、幸運にも、後に私のスタートアップ起業の共同創業者となる 2 人に出会うことができました。このクラブでは、3 人のメンバーが自身にとって興味のある分野の Google デベロッパー エキスパートになりました。このように、GDSC リードであることは、私の仕事と個人的な成長の両方に非常に良い影響を与えたことは間違いありません。
私はソフトウェア開発分野で 12 年近く働いており、長年にわたっていくつかの Google ツールを使用してきました。その中にはすでに存在しないものもあります。最も頻繁に使用している現在利用可能なツールは、次のとおりです。
もちろん Firebase です。みんなの役に立つソリューションを構築するのが大好きな私にとって、Firebase は、ソリューションや MVP の試作を迅速に行う際に頼りになるツールです。何千人ものユーザーが何年にもわたって使用しているいくつかのシンプルなツールを Firebase を使用して構築しました。すべて無料でホストされ、驚異的なスピードで配信されています。現在でも、GDE としてセッションで紹介するデモ アプリケーションの UI 部分をいつも Firebase で構築しています。
完全に Firebase 上で動作する URL 短縮ソリューションである Fireshort を構築しました。このプロジェクトは完全にオープンソースであり、いくつかの企業では、社内の URL を短縮するための基盤として使用されています。私は Linkborg でこのプロジェクトの次のバージョンに取り組んでいます。
また、Firebase と Pub/Sub を使用して、主に企業クライアント向けにリアルタイム更新モニタリング プロダクトをいくつか開発しました。
概念実証のために、EasyCard の完全なイベント駆動型クローンである KolPay も開発しました。これは、Raspberry Pi、RFID リーダー/カードなどのハードウェア コンポーネントと Firebase、Pub/Sub、Cloud Firestore、Cloud Functions を併用した RFID ベースの支払いウォレットです。
Google Bard での構築は、刺激的なものになると思います。新しいプロジェクトや、既存のプロジェクト内のモジュールをセットアップするときに、必要なコードを繰り返し書く必要がなくなるのはありがたいです。私は 1 日の多くをコーディングに費やしているので、その一部が自動化されると本当に助かります。AI が代りにやってくれるなんてすばらしいです!
デベロッパーの道を進む人は、困難に見舞われる可能性があります。誰もが AI について語り、誰もが次に関心を呼ぶものを開発したいと考えています。この分野に初めて挑戦する場合は、一歩引いてリラックスし、長らく悩まされていた問題に対するソリューションの構築から始めましょう。同時に、その問題の解決に関連する多くの技術ブログを読み、バーチャルまたは対面でデベロッパー コミュニティの一員になり、同じようなプロダクトを構築することについて、知見を共有してくれる人々に出会いましょう。
Kartik Derasari さん
アフマダーバード、グジャラート州、インド
Google デベロッパー エキスパート、Google Cloud
GDSC、シルバーオーク大学、リード同窓生(2020〜2021 年)
Google Developer Group Cloud 主催者
Persistent のフルスタック エンジニア
GDSC リードとして、さまざまなプロジェクトで Google 社員、Google デベロッパー キスパート、Google Developer Groups コミュニティのリードたちと共同作業する機会を得ました。これにより、多様なテクノロジーを探究し、自分に最適なものを選択することができました。知識の共有と人前で話すことは、Google デベロッパー キスパートから学んだことです。それ以来、私はテクニカル スピーカーとして歩み始め、機械学習、TensorFlow、ウェブ、Firebase、Google Cloud に関して学んだことを広めています。また、DevFest、Google Cloud Community Days、GDSC WOW などのカンファレンスで自分の知識を共有することもあります。こうした活動を通じて得られた学びは、Google デベロッパー キスパートとしてのキャリアを築き、成長の過程で成果を上げるのに本当に役立ちました。
GDSC リードであることは、個人的な成長と仕事の上での成長にプラスの影響を与えました。私は技術コミュニティと関わるようになり、Google Developer Groups と Google Developer Experts プログラムについて知りました。GDSC のメンバーだったときに GDG Cloud Ahmedabad 支部でボランティアを始め、後にコミュニティ主催者の 1 人になりました。また、ウェブ、Firebase、機械学習プロジェクトで Google デベロッパー エキスパートとのコラボレーションを開始し、オープンソースでの貢献を行いました。
コミュニティの皆さんからは暖かい歓迎と支援を受けました。Google のデベロッパー プログラムに参加して、最大限に活用することを強くお勧めします。また、GDG コミュニティ リードと Google デベロッパー エキスパートの方たちに、仕事上のキャリアについて指導していただきました。そのおかげで、私は適切な人たちとつながり、Google Cloud パートナー エコシステムの一部である MediaAgility 社でキャリアをスタートさせることができました。それ以来、職業上でも個人的にも、可能な限りウェブと Google Cloud に取り組んできました。
インドの Google Cloud エコシステムから刺激を受け、6 つの Google Cloud 認定資格を取得しました。これは、個人的な成長と仕事の上での成長に大きな影響を与えました。
私は、ウェブ エンジニアとして Firebase を使い始めました。Firebase は、認証を追加したり、アプリケーション データを Firestore に保存したり、Firebase Hosting を使用して CDN を通じてウェブアプリ フロントエンドの静的ファイルをホストしたりする際に非常に役立ちました。私は一連のウェブアプリを構築している際に、機械学習について探求するようになり、さまざまなユースケースの機械学習モデルを構築するために TensorFlow を使用しました。それ以来、より多くの機能をウェブアプリに追加するために、Google Cloud ML API と Cloud Functions を使っています。
これらのプロジェクトに取り組んでいるときに、Google Cloud パートナー エコシステムに出会い、フルスタック エンジニアとして MediaAgility 社(現在は Persistent Systems 社の子会社)に入社しました。それ以来、私は Google Cloud PSO と企業クライアントとともに Google Cloud に取り組んできました。
私はアプリケーション デベロッパーとして Cloud Run を本当に気に入っています。サーバーレス コンピューティング プラットフォームなので、インフラを気にせずに、アプリケーションの構築に多くの時間を費やすことができます。Firebase Authentication、Cloud Firestore、Cloud Storage も大好きなツールです。フルスタック アプリを作成し、本番環境に迅速に提供するのに役立ちます。
現在、生成 AI の波が来ているので、Google Cloud Run、BigQuery、Cloud Storage、Generative AI Studio、Vertex AI Model Garden、PaLM モデルを使用して、多くのアプリの構築に取り組んでいます。最近、チャット アプリケーション インターフェースを構築しました。これは、構造化されたエンタープライズ データ ウェアハウスと非構造化ファイルから有益な情報を提供するアプリケーションであり、エンタープライズ グレードのデータ ガバナンスとセキュリティを備えています。
常に学び続け、粘り強く探究しましょう。学習習慣を身につけることはすばらしいことです。個人的にも職業的にも成長する上で役立ちます。新しいことを探究するのに役立つだけでなく、本当に好きなことを習得できるようになります。初心者の方は、関心のあることから始めて、その後、他の分野の知識を増やしていくのがいいと思います。たとえば、ウェブアプリの構築に興味があるなら、まずやってみましょう。自分は向いていると思うなら、たとえば、機械学習の要素を取り入れてみてください。こうしたやり方で、新しいものを探究し、自分が習得したものを試すことができます。