こんなツイートをたまたま見てしまったがために…。
DevRel と SDK 開発の兼任ってめちゃくちゃ格好いいですね……😍
— lettenj61 (@lettenj61) April 13, 2022
ということで、これまでDevRelサポートを提供する中で開発してきたSDKをリストアップしてみようと思います。これは2022年4月現在です。
NCMBは一番サービス提供の歴史が長いので、多いですね。私が開発していないPHP SDKもあります。公式SDKはJavaScript/Swift/Objective-C/Java(Android)/Kotlin(Android)/Unity向けがあります。足りない部分を私が開発している形です。
メール配信サービスです。ブログ記事執筆を提供する中で生まれたSDKです。
テストのクラウド管理サービスを提供しています。
エンジニアフレンドリーなメール配信サービスです。最近サービス提供を開始したこともあり、今後SDK拡充予定です。
APIを提供するサービスがあったとして、それをわざわざHTTPライブラリから直接操作したいと思うでしょうか。コードがごちゃっとしますし、仕様を理解してコーディングするのは苦痛です。私ならSDKがあるサービスとないサービスの2つがあれば、SDKがあるサービスを選ぶでしょう。
ということで、開発者にとってのペインポイントを除去し、かつ選ばれる理由を提供するためにSDKを開発しています。全機能を網羅していないものも多いですが、その辺りは利用者の需要に合わせて開発しています。
後はブログ記事のネタとして使えるのが良いです。SDKを開発して、それの使い方をブログ記事にするというマッチポンプ的なことをよく行っています。
例)
blastengineのJava SDKを使ってメール送信を行う - Qiita
色々な言語で開発していますが、極力そのサービス利用者が使っている言語を優先的に採用しています。サーバーサイドの場合、Java需要が強いように感じます。その後はPHP、Node.js、Python、Rubyでしょうか。
アプリ界隈であれば最近ならFlutter、ついでReact Nativeになるかなと。Xamarinはコロナ感染チェックアプリで一躍有名になったので、開発してみました。
正直得意ではない言語も多いので、その辺りはテストを書きつつググりながら実装していたりします。C#とかJavaは得意ではないですが、IDEがあるので安心ですね(それでも苦戦することが多いですが)。
RubyであればRubygems、Pythonであればpipなどが有名なパッケージ管理システムです。この辺りへの登録はもちろん行っています。
各パッケージ管理のプロフィールページです。
この辺りはインストールのしやすさはもちろん、個人のブランディングとして行っている面もあります。なお、JavaのMaven Central Repositoryはとても面倒なイメージがあって登録していません…。
今後はGo言語やRust辺りでも開発していきたいのと、PHPは自分の中で歴史がバージョン5で終わってしまっているので、SDK開発を通して勉強し直したいと思っています。
SDK開発はDevRelにおいて、コーディングスキルが活かせる場面だと思うので、ぜひ取り組んでみると良いでしょう。
メールにてDevRelに関するニュース、アップデートをお送りします。
Contact is below.