RAKSUL TechBlog

ラクスルグループのエンジニアが技術トピックを発信するブログです

Building Josys: A fascinating Experience of Cultural Integration, Collaboration and Paradigm Shift

Imagine a prophecy like this from a couple of years ago: 

A high-tech Japanese company would start a software R&D centre in India completely virtually, assimilate top-notch talent, integrate them with a new business development team in Japan, bridge the language/culture/distance gaps, build a B2B SaaS platform from scratch and take it to successful commercial launch - all this within a year - without any team-member physically seeing/meeting anyone else on the team. 

Most would readily agree that it makes for some interesting modern day fiction. But this is exactly what was accomplished with the launch of RAKSUL India in September 2020 and consequently the launch of JOSYS product on September 1st, 2021. By undertaking this initiative, RAKSUL made great strides towards realizing the globalization vision of our CEO, Yasukane Matsumoto. 

The pandemic has brought about many paradigm shifts ranging from business models, organizational cultures, educational systems to global economics. The already tightly connected world is now flattened with boundaries and barriers becoming far less daunting. RAKSUL has been a front-runner in this new paradigm with the truly “born-in-the-cloud” RAKSUL India Private Limited (RIPL). We have acquired some amazing talent from seven different states in India, and one of them is in fact a Japanese national who recently relocated to India. 

Collaboration across cultures can happen effectively only after achieving a certain degree of Cultural Integration, which is commonly defined as “people from more than one culture coming together to form a unique, multicultural unit where each culture retains its character, features and values”. While RAKSUL as a company has clearly distinguished itself in the Japanese industry as a new-age tech firm, it has the entrepreneurial DNA of a Silicon Valley start-up characterized by agility and nimbleness. A new technology center like RIPL is naturally imparted with the youthful exuberance, pull-through and tech-savviness of the Indian technology ecosystem, nicely complementing its inherited values of Japanese quality and holistic ownership. Now, that is a potent concoction. But how do we harness its power? How do we channelize this inherent diversity to ensure alignment with the business?

In our experience, we find three factors to be vital in forging this delicate integration:

Acceptance As engineers, it is but natural for us to try to find rationale, logic and explanation for things we observe. The fact of the matter however is that many such cultural differences, preferences and norms may not have obvious reasons or explanations. In a team environment, respect for such diversity and unequivocal acceptance yields the most benefit. 

Getting educated about the other culture with an open mind is something that really helped us. In this day and age, we have access to very relevant information, literally at our fingertips. As a team, we went through cross-cultural orientation and assimilation. Our team members were sensitized about how some seemingly natural aspects to them could be interpreted quite differently by others who come from different cultures and professional backgrounds. Quite a few things fell into perspective when healthy curiosity was met with discovery.  A key lesson learned was to accept and respect different customs, beliefs and values without explanations and logic. 

Empathy Even people of the same country can come from highly diverse traditions, backgrounds and experiences. Inculcating an understanding of such diversity goes a long way in developing a sense of empathy within the team. Some of the examples we encountered were in the differences in expectations, assumptions, norms and preferences of individuals. 

While demonstrating multidimensionality was an expectation in one culture, honing specialization was the preference of the other. While ad hoc working was natural and perfectly comfortable for some team members, it was seen to be a bit chaotic and unstructured by some others. While “ownership” meant jumping onto anything that needed attention to some leaders, to a few others it actually meant promptly delivering what they have been assigned, without getting distracted. Once these subtle differences were understood and dealt with empathy, frictions started getting eliminated.  

Adaptation By far, adaptation is the hardest, yet most powerful tool in a multicultural team-member’s toolbox. In our journey thus far as a global team building Josys, we have observed that the collective will to quickly learn as well as unlearn is the most effective antidote to being bogged down by old baggage that gets heavier by the day, amidst such rich team diversity. One flip-side of smart people from diverse backgrounds quickly meshing together into a team is that their personal successes in the past would have reinforced their individual approaches, albeit in very different contexts. This invariably happened to us too. We countered this phenomenon in two ways: 

First, by encouraging mindful context-awareness: bringing to the fore the uniqueness of the context we currently operate in and the multitude of considerations required (in the present context) before resorting to our predispositions. It was immensely insightful for the team members to deeply comprehend the nuances of the market we are targeting, the preferences of the customers we are catering to and the nature of the business we are undertaking. 

Second, by placing a strong emphasis on the core values of RAKSUL and formulating missions grounded in reality aimed at solving our customers’ problems systematically, with across-the-board cooperation. When our team started orienting around these resonating missions aligned with customer value, the significance of the HOW diminished and mattered much less than the WHAT. Personal preferences for doing things in a particular way became more a means to an end, and this fostered adaptation and constant alignment. 

Another impetus for continual adaptation came from our maniacal focus on understating how much do the customers really value what the team has been delivering incrementally in the Josys platform. Our strong beliefs and convictions became mere hypotheses that get validated in the field soon enough. Adapting accordingly is the only sensible choice. 

In summary, starting a global centre, building a winning team and launching a brand-new product for RAKSUL in record time has been a truly gratifying, enriching and learning privilege for everyone involved. Knowing our CEO’s vision for RAKSUL, Josys and RIPL, there isn't an iota of doubt that this is just the beginning of an amazing journey, with many more fascinating experiences in store!

 

[The author of this article, Sanjay Rajasekhar, is the President of Raksul India Pvt. Ltd. (RIPL) and also its first employee.]

Building Products in the API Economy

This article takes you through the evolution of the API Economy and why it’s important to build products today that are relevant in the API Economy.

Introduction

For the uninitiated, Josys, which was officially launched in September 2021 is the latest product to come out of RAKSUL’s product portfolio. Josys is a complete cloud solution for IT Device & SaaS Management which automates and simplifies IT operations to support the employee lifecycle in Enterprises.

One of Josys’s key features is providing the IT Admins of enterprises the ability to perform several User Management related operations on Enterprise softwares like visualisation of account information, account provisioning and de-provisioning. For this feature, we have integrated with the user management APIs of 40+ enterprise softwares. This phase gave me a chance to take a close look at how these enterprise softwares unlock opportunities and provide means to increase efficiency through the extensive API support that they offer.

API Economy and its evolution

API Economy pertains to business opportunities and operational efficiencies that can be unlocked and derived out of applications and services using APIs.

The API economy has grown exponentially in the last few years. In addition to improving and solving many of the operational inefficiencies that previously existed in the industry, APIs have also resulted in the emergence of many new opportunities and revenue streams for businesses. So much so that Salesforce generates more than 50% of its revenue today through APIs.

The API economy in fact has given rise to many startups and products that leverage APIs to automate workflows and to integrate various applications. The success of products like Zapier is a testament to this fact. In fact, Zapier today is a unicorn whose business model is completely reliant on APIs offered by other applications. They provide integrations and workflows across 3000+ enterprise softwares, thereby increasing efficiency and saving time for enterprises to a great extent.

On similar lines, the success of many products like Shopify is attributed to the wide range of integrations that they offer with other systems.

Industry practices in the API economy

Most modern day enterprise softwares have rich API support through which several operations can be performed on these applications on a user’s behalf. While the nature of such operations depend on the software, some common use cases (but not limited to) are:

  • Triggering an alert and sending across information in the relevant form when a certain event occurs. For example, when a query from a customer on the CRM software is received, a message to a channel on Slack can be triggered so that the customer support team is instantly notified.
  • Extracting stats and reports from multiple sources like CRM, analytics, Project Management softwares to provide a consolidated report to Product Managers.

While some of the desired integrations and workflows across applications are readily supported by existing solutions or apps, specific or customised solutions would have to be developed based on the requirements and the APIs that are on offer.

Most established modern day enterprise softwares like Google Workspace, Slack, Microsoft 365 etc. have several things in common with respect to the API support they extend such as:

  • Developers can build apps by making use of the APIs that these softwares provide. Some of these softwares even have a marketplace where these apps can be published and distributed commercially to be used by the larger community.
  • Most applications make use of protocols like Oauth2 for data access through the APIs, ensuring data privacy.
  • The APIs available are well documented and easy to understand. Some applications like Google Workspace and Slack even have an interactive dashboard for trying out the APIs, enabling even someone with limited coding knowledge to explore the APIs and identify opportunities.

How Josys takes advantage of APIs

As stated earlier, many value propositions that are offered on Josys today depend on the API support extended by various enterprise applications.

Josys being an IT asset and SaaS Management platform, having the up to date employee ledger on the platform becomes crucial for our users to perform any operation, be it asset related or SaaS management related. While the IT admins can update the employee ledger through a CSV upload or by adding employees manually on the platform, this requires manual effort and isn’t very user friendly. For this reason, we have integrations with SmartHR and Google Workspace, allowing our users to choose either of them as the employee ledger source. We make use of the APIs provided by these applications to import the employee information on a daily basis, eliminating the need for any manual intervention.

Similarly, for the SaaS management feature, we make use of the user management APIs of enterprise softwares wherein users can perform account provisioning, de-provisioning and account visualisation in bulk across multiple applications, eliminating the need for going to the admin panel of each of the applications and performing these operations individually. Some of the popular apps supported are Google Workspace, Slack, Microsoft 365, Jobcan.

As you can tell by now, APIs are the backbone of the value propositions that we offer on Josys today and are going to play a crucial role in the features we will be adding in the future.

Conclusion

As more and more Enterprises head towards Digital Transformation and automation, the API economy is going to become all the more prevalent and APIs are going to play an integral role in how enterprises would solve complex business problems.

The API economy also opens up possibilities for building products that leverage the APIs offered by other applications. Hence, it becomes important for businesses to extend their product functionalities through APIs to maintain a competitive advantage.

RAKSUL is hiring in India!

https://www.linkedin.com/company/raksul-india/jobs/

Check out all the Advent Calendar articles by RAKSUL

https://qiita.com/advent-calendar/2021/raksul

ColaboratoryでMVPを作る

RAKSUL Advent Calendar 2021の22日目を担当する五百井(いおい)です。

ノバセル事業本部でデータサイエンティストをやっています。

本日は業務での経験から、ColaboratoryによるMVPの作成について書きます。データサイエンスとビジネスを結びつける内容であり、ColaboratoryやMVPといった用語を知らない方にも楽しんでもらえると思います。

Colaboratoryとは

ColaboratoryとはブラウザからPythonを記述、実行できるGoogleのサービスです。

Pythonに限らず、プログラミング言語を書いてプログラムを開発するにはローカルPCやサーバに開発環境を構築しなければなりません。構築には時間がかかることや、ITエンジニアでなければ難しい作業が発生することがあります。また、異なるPCやサーバで構築された開発環境は、たとえ同じ言語に関するものであっても、OSやソフトウェアのバージョンなどに微妙な違いがあり、ある環境で開発したプログラムが別の環境で動かないこともあります。

Colaboratoryを使えば、環境構築をする必要がなくなり、Googleが統一的に管理しているので開発者によって環境に差異が生まれることもありません。しかもGoogleのアカウントさえ持っていれば無料で使えます。また、Pythonはデータサイエンス分野でよく使われる言語ですが、NumPy、pandas、scikit-learnといった定番のデータサイエンス関連パッケージはインストール済みですし、必要に応じてパッケージを追加することももちろん可能です。

なお、ブラウザでプログラムを実行して結果が即座にブラウザに返ってくるUIをノートブックと言います。実験ノートのように実行結果を記録しておいたりメモを添えたりできるためこのように呼ばれます。ColaboratoryのUIは有名なノートブックのJupyter Notebookとほぼ同じです。環境構築なしで使えるJupyter Notebookといってもよいでしょう。

MVPとは

事業開発におけるMVPとはMinimum Viable Productの略で、必要最小限の機能を備えたプロダクトのことです。とくにスタートアップにおける事業立ち上げでよく使われる概念です。

たとえば、自動車をゼロから開発するとします。エンジン、ブレーキ、車体、車輪、ハンドル、センサなど、数多くの部品とそれらを組み立てる技術が自動車の開発には必要であり、完成には長い時間を要します。当然、完成するまで自動車に乗って移動することはできません。

一方、事業における自動車開発の目的が移動手段の提供だとすると、イラストのように簡易な移動手段をまず作れば顧客にすぐに使ってもらえます。また、早い段階で顧客から得たフィードバックを自動車に反映できます。ここでの簡易な移動手段がMVPであり、アイデアを思いついてからすぐにサービスを提供できる、完成品が顧客のニーズからかけ離れたものにならないといった利点があります。

※イラストは「Making sense of MVP」(https://blog.crisp.se/2016/01/25/henrikkniberg/making-sense-of-mvp) より引用

なぜColaboratoryでMVPを作るのか

データサイエンティストやAIエンジニアと呼ばれる職種の人は、人間には複雑すぎてできない問題を解いたり、人間がやるとものすごく時間がかかる作業を一瞬で完了したりする数理モデルやアルゴリズム、いわゆるAIを開発します。我々ノバセルが属するTVCM業界だと、たとえば広告主の要望を入力すると出稿すべき番組の最適な組み合わせを出してくれるウェブサービスがあれば便利でしょう。数理モデルやアルゴリズムの開発には試行錯誤がつきものなので、インタラクティブなプログラミングができるノートブックでの開発が好まれます。

一方、数理モデルやアルゴリズムが完成してもすぐにウェブサービスとして使ってもらえるわけではなく、実装をしなければなりません。既存の機能に影響を与えることなく、数理モデルやアルゴリズムによる新機能をサービス上に載せるには、データサイエンスとはまったく異なるエンジニアリングの技術が求められ、相応の時間がかかります。

ここで新機能の提供を素早く開始するのにColaboratoryでMVPを作ることが考えられます。前述の例に倣うと、広告主がブラウザへの入力だけで番組の組み合わせを得られるサービスが完成品だとすると、広告主がメールやSlackで要望を送信すると担当者から番組の組み合わせが返ってくるサービスがMVPとして考えられます。Colaboratoryごとプログラムを渡し、簡単な操作マニュアルをつければ、プログラミング経験がない担当者でもプログラムを実行してサービスを提供できます。データサイエンティストは開発に使ったColaboratoryを特別に書き換える必要がありません。

ちなみに、MVPを提供する際に最終的に自動化したい処理を人間が済ますことを「オズの魔法使い」と言います。

気をつけるべき点とおわりに

ただし、Colaboratoryはプログラミングを知らない人が動かすことを想定したものではなく、書かれたプログラムが書き換えられないように保護することもできません。操作ミスなどでプログラムが動かなくなってしまう危険性があります。また、Colaboratoryを動かすだけでサービス提供できるとはいえ、広告主の依頼を受領してからアウトプットを送信するまでのオペレーションコストがかかっているので、速やかに正式なウェブサービスへ移行することが期待されます。

最後に個人的な実感に基づく話なのですが、データサイエンティストはプロダクトをガリガリ開発するようなエンジニアでもなければ、営業をはじめとするビジネス職でもなく、ともすれば組織で中途半端な立ち位置に陥ってバリューを発揮できなくなる不安定な存在だと思います。両者のギャップを乗り越えてデータを活用しビジネスに貢献するには、組織編成からコミュニケーションスキルにいたるまでさまざまな観点からの方法がありますが、本日のお話もその一助になれば幸いです。

参考

StepFunctions を CDK + Typescript で構築するサンプル集

title: StepFunctions を CDK + Typescript で構築するサンプル集

こんにちは。ノバセル事業本部の星野です。本日は、Raksul Advent Calendar 21日目です。

最近の業務で、StepFunctions によって Web サービスを構築する機会がありました。 StepFunctions は AWS の各種サービスをつかったワークフローを構築するためのサービスです。 Lambda, ECS, AWS Batch, Aurora Serverless など様々なサービスの呼び出しをステートマシン形式で定義することができます。

 https://aws.amazon.com/jp/step-functions/

このとき、AWS クラウド開発キット(CDK) を触り、いくつかのサービスを使ったワークフローを構築したのですが、非常に便利な組み合わせだなあと感動しました。

本稿では StepFunctions を CDK を使って構築する際によくありそうな実装パターンをサンプル集としてまとめてみました。

続きを読む

Snowflakeの紹介とSnowCamp参加報告

こんにちは。ノバセル事業部システム開発部エンジニアの山中です。RAKSUL Advent Calendar 21日目を担当します。

今回はノバセルで導入しているSnowflakeについての紹介と、Snowflake主催のブートキャンププログラムSnowCampの参加報告をします。

「データクラウド」Snowflakeとは

Snowflakeとは、データウェアハウジング機能を中心としたデータプラットフォームで、あらゆる規模のデータを1か所に集約し、データに対する様々なタスクを優れたパフォーマンスで実施することができます。

ここでいうデータの様々なタスクには、例えば以下のものが含まれます。

  • データロード(データをウェアハウス内に蓄積する)
  • データクレンジング(データを整え、利用しやすいようにする)
  • データ分析(ウェアハウス内のデータを分析してビジネス示唆を出す)
  • データの蓄積(データを1箇所に集中管理する)
  • データの公開・共有

このように、データにまつわる多様なワークロードに対するマネージドサービスを提供しているため、Snowflakeは「データクラウド」を自称しています。

ラクスル社内ではノバセル事業部のデータ基盤として昨年より導入しています。Google BigQueryやAmazon Redshiftと比較されがちな製品ですが、Snowflakeの優れた点をいくつかご紹介したいと思います。

数億行のデータの複製が一瞬

Snowflakeでは、ゼロコピークローンという機能を利用することができ、データを複製することなく、テーブルのクローンを作成できます。

例えば、target_tableを、source_tableからデータを含めて複製したい場合、

CREATE TABLE target_table CLONE source_table

と書くと、source_tableと全く同じテーブルtarget_tableを作成できます。データを複製しないため、レコード数が億単位の巨大なテーブルであっても数秒のうちにクローンを作成できます。

この機能により、開発環境の構築・破棄がスピーディに行えたり、ロールバックが容易に行える(後述)ようになります。

任意の地点のデータへのロールバックが容易

Snowflakeでは、タイムトラベル機能というものがあります。これは、あるテーブルの任意の地点の状態を確認することができる機能です。

例えば昨日正午のテーブルの状態を確認したい場合には、

SELECT * FROM table_a AT(timestamp => '2021-12-20 12:00:00'::timestamp);

とクエリすると確認することができます。また、任意の地点でのデータを別のテーブルにクローンすることも可能なので、テーブルに対して誤った操作などをしてしまった際のロールバックにも利用することができます。例えば、

CREATE TABLE backup_table CLONE source_table AT(timestamp => '2021-12-20 12:00:00'::timestamp);
ALTER TABLE backup_table SWAP WITH source_table

と書くことで、source_tableテーブルを実質的にロールバックしたように見せることができます。タイムトラベル機能もゼロコピークローンと同じ仕組みで実現されています。

これらの機能は、マイクロパーティションと呼ばれる技術の上に成り立っており、マイクロパーティションについて詳しく知りたい方は以下のドキュメントを是非見ていただければと思います。

マイクロパーティションとデータクラスタリング - Snowflake Documentation

データの共有ができる

また、Snowflakeには、データシェアリング機能が備わっています。この機能を利用すると、企業アカウント間でデータを共有し、他社アカウントのデータがあたかも自社アカウントに存在するかのように利用することが出来ます。

企業間でデータ連携をする際に必要となる開発コストがほぼ0になるだけでなく、データの更新がリアルタイムに反映されるため、データの鮮度の向上にもつながります。

さらに、データを販売するプラットフォーム「Snowflake Data Marketplace」も提供されています。

Snowflake Data Marketplace | Access Live, Ready-to-Query Data

この機能は、Snowflakeのスローガン「Mobilize the world's data」(欲しいデータを欲しい時に使える)を実現する上でもっとも中心的な存在となっています。

上記以外にもSnowflakeには優れた点があります。Snowflakeの特徴について詳細を知りたい方は、以下のData VIz Labさんのブログなどをご覧ください。

【徹底解説】次世代データウェアハウス"snowflake"の特徴

SnowCampとは

ノバセルで導入しているSnowflakeですが、Snowflake日本法人が主催するブートキャンププログラムSnowCampに第1期生として参加してきました。

どんなプログラム?

SnowCampは、講義やディスカッションを通じて、以下の3つの目的を達成することを目指すプログラムとなっていました。

  • Snowflakeの技術や環境を正しく理解し利用するためのスキルを習得する
  • データドリブンな世界を実現していくためのビジョンを言語化できるようになる
  • 同じ理想を持ったネットワーク・コミュニティの形成

全4回のプログラムとなっており、自分を含め、8社から1人ずつが参加する形式になっていました。

Snowflakeの技術・機能に関する講義はもちろん、それらの機能を利用して自社のワークロードの改善案を考えたり、他社のデータと組み合わせどのようなビジネス価値を生み出せるのか、といった実践的な内容をディスカッションベースで考えていきました。

何を得られたか

データドリブンな意思決定を支えるための施策が提案できるようになった

ノバセルは「マーケティングの民主化」に向けて、TVCMマーケティングにおけるデータドリブンな意思決定を支援するサービスを展開しています。

Snowflakeは、このデータドリブンな意思決定を支えるためのプラットフォームです。Snowflakeを用いてどのようにノバセルの事業成長を支え、牽引していくことができるのか、講義やディスカッションを通じて解像度を高めることができました。

SnowCampで学んだことをベースにして、短・中期的な改善施策を提案していくことができるようになりました。

他社における取り組みを知り、ノバセルの強み弱みを認識できた

新卒として入社し半年ほど働いてきましたが、コロナ禍ということもあり、社外の方と関わる機会があまりありませんでした。

その中で、SnowCampは他社の取り組みについて深いところまで話を伺い、ディスカッションする機会になりました。

他社で行っている取り組みの中でノバセルでも取り入れていきたいことや、逆にノバセルだからこそやりやすいことなどが分かり、ノバセルの立ち位置を理解することができました。

井の中の蛙にならないよう、今後も積極的に社外の方と交流していこうと考えるきっかけになりました。

さいごに

今回は、ノバセル事業部において利用しているSnowflakeと、SnowCampプログラムについて紹介させていただきました。一緒に参加した他社様、招待いただいたSnowflake様、自分を送り出してくれたチームメンバーの皆様に感謝いたします。

また、ノバセルにおけるSnowflakeの活用事例も近いうちに紹介していこうと思いますので、お楽しみに!

先日開催されたSnowflake公式イベントSNOWDAYでも、ノバセルにおける活用事例を紹介しているので、是非ご覧ください。

https://www.snowflake.com/snowday-japan/?utm_source=dm2&utm_medium=email&utm_campaign=mick

(SNOWDAYへの登録が必要となります)

ーーーーーーーーー

ラクスルでは、エンジニア・データサイエンティストを募集中!

データ関連技術を活用して事業貢献に成長したい方から、カジュアルに話を聞いてみたい方までぜひご応募お待ちしております!