Ich lerne Ruby on Rails for Africa

Railsとアフリカで苦戦するブログ

ウガンダな環境(@日本)で働きたいエンジニア募集中です!(フルタイムじゃなくても良いよ!)

友人に「エンジニア足りないんだよねー」という話をしたら「昔みたいにアフリカの事業のブログ記事を書けば?」とのアドバイスを頂きました。しゅんすけありがとう。





もう忘れ去っていたんだけども、むかーし、むかしにこんな記事を書きました。
これはもう2社も前の話なんですが、この記事のおかげさまで2人から応募が来まして2人とも採用しました。本当にありがとうございます。

sugi511.hatenablog.com

最近の話と今やってること

2015年6月からフリーランスをやっています(一応継続中)。成長中ベンチャー企業のバックオフィスとかにエンジニアとかで入り込んで、業務フローの改善提案とかそれに伴う社内システムの改修・開発なんてところをやっていて、人の工数を激減できるところが面白くて、その辺を業務委託でやったりしています。

その一方で、7月から株式会社アフリカインキュベーター(以下Afri-inc)という会社にジョインしました。当時は、まだ登記もされてなかったんですが、学生時代の先輩から代表を紹介され、あれよあれよと開発メンバーとしてジョインして、今はCTOという肩書きで開発をしています(特に開発には変わりない)。書いてて、なんだかんだでもう半年近くになるのかぁ、と思うとしんみりします。




Afri-incは何をしているのか

タイトル、上述の通り、まずアフリカのウガンダ(アフリカの東の方)で事業をしています。現在は、東アフリカの流通市場で、現地メーカー・卸 ⇄ 小売店の間で使用されるB2Bのアプリを開発しています。ざっくり言うと、自社(現地メーカー)のプロダクトと顧客をWebとかAndroidで登録しておいて、営業先で売ったものもAndroidで登録し、その場で領収書をプリントアウトしたり、在庫管理できたりするツールです。Webは管理者向け、Androidは営業向けという風に分けてますがこんな感じです。

今まで全くなかった、ということはないんですが、それでも紙で配ったり、手書きだったり、記録がアナログだったりというものをデジタルにすることで、もっともっと便利にしていこうぜ!ということです。

しかも、流通周りって人の暮らしに直結していて、めちゃ面白いんですよね。都市部での配送がより効率化されて、同じ人員の数でも、都市部から遠いところへの配送ペースが1ヶ月に1回だったのが3週間に1回になって、品切れ状態が軽減されたりするとすごくないですか?しかも、同じ人数で多分売上も上がってるんですよね。じゃあ、もしかしてもしかすると、きちんと物が届く状態を整えることと売上が伸びて、人が足らなくなって、さらに雇用を生み出すことになるとかになると、それを引き起こす基盤となっているのが僕らの開発しているツールですってカッコ良すぎでしょ。(と、僕は思っていつもワクワクしてます。)


開発って何するの?

まず、安心してください。日本で働いてますよ。
これ、よく聞かれるんですが「今って一時帰国中なんですか?」ってやつ。今のところ開発メンバーは全員日本に居ます。
ちなみに、ウガンダで開発したいんだけど・・・みたいなのは全然OKというか大歓迎な感じです。マジ、現場の声をズレなく聞きたい。




で、開発って何するのか?ってとこなんですが、上述のツールの開発がメインです。というか、今はそれが全てです。
具体的には、Web側(APIサーバー含む)はRuby on Railsでゴリゴリしてて、Androidは営業さん向けにゴリゴリ作ってます。

■Afri-incで用いている言語・ツール
Ruby on Rails 4.2, Android Studio, Git, GitHub, Slack, Heroku, Deploygate

Ruby on Railsで作っているWeb側は、顧客情報や製品情報の管理と取引情報の管理などで、ほとんどがAndroidアプリを通じて登録されるものなので、本当に管理画面を作っている感じです。難しい技術が必要というよりかは、それを誰がどのタイミングでどういう意図で見るのか、っていうことに基づいてよくある管理画面を作ったり、そのデータを元にヴィジュアル化したグラフなどを提供するようになっています。

Androidアプリでは、Webで登録された情報を元に、お客さんのところで行った営業活動の登録(主に取引)や自分の業績を閲覧できたりと、こちらも(機能としては)シンプルになっています。とはいえ、まだまだスマホの普及率も高くない中、どういう風に見せたり遷移すると初見でも使いやすいか、などは考えることがたくさんありますし、実際の現場からの声からも必要部分はともかく、十分にはまだまだ届いていないな、という感じです。



開発の現状

今のところ、ウガンダでどんどん営業をかけていて、使ってくれてるお客さんからのフィードバックを元に機能改善をしまくっているのですが、手が足らないので本当に誰か手伝ってー状態です(´・_・`)というのも、開発メンバーが現状4人でフルタイム(週5)というコミットが出来ないのでなかなかやりたいことまで手が回らない、というところです。

結構早いスパンでリリースを繰り返していて、その度に解決する問題と、新たに出て来る要望(つまりは期待)などを早く早く収束させれるように、今どんどんと機能改善をしています。ちなみに、Web側もアプリ側も足りてませんので「あれ?週2ぐらいでもいいなら興味あるかも」みたいに思った方は僕まで連絡ください。マジ嬉しす。



開発体制というか、今はオフィスに集まって開発〜とかではなく、みんなリモートで仕事してます。
Google Spreadsheetで現地で出た要望等を取りまとめて、開発が必要ならgithub issueに登録、pull request出してマージ、というよくある感じになっています。コミュニケーションはSlackでとっていて、SkypeMTGをしたりしています(たまにウガンダ側にノイズ乗り過ぎて何言ってるか聞こえないときある)。


会社のメンバーとかとか


現在居る主要メンバーは、なかなかピカピカのレールあったのに突然外れたアウトローみたいな人が多い感じがしてカオス感あっていいです。代表とか、ウガンダでドラム缶風呂とかしてるしマジ謎。僕を誘ってくれた先輩は昔は味噌売ってたし、アフリカで米育ててたのはFBで見た。アフリカでも味噌作ってるのかな?ちなみに開発チーム以外は基本ウガンダに居ます。開発メンバーは偶然にも全員が日本ですが、別にどこでもいいです。アメリカでも、イタリアでも、ナイジェリアでも、グリーンランドでもグンマーでも。


これはWantedlyで募集してた当時の話はこちらです。
www.wantedly.com

早く予防接種受けないといけないんですが、僕も今年前半には初ウガンダ行ってきます。アフリカとか行ったことねーし、まじ想像つかねーーってところから、ちゃんと実感値を一段階アップさせます(笑)(実はまだウガンダ行ったことないんです・・・早く行けよって話ですよね、マジで。)

ここからはちゃんとした話


タイトルの通りなんですが、一緒に働いてくれるエンジニア、募集してます。Web側もアプリ側もどちらも足りてないし、パートタイム(週末とか終業後とか)での受け入れももちろんありなので、興味があればご連絡いただけると嬉しいです。
開発の話のところに書いた通り、開発内容としては割と普通というか技術的チャレンジというのは、DMPとかブロックチェーンとかAIだとかっていうのは未だ出て来てないしまだ見えないので、スーパーマッチョマンが欲しいっていうよりかは、普通に普通の開発が出来る人が良いのかもしれないです(あまりに好奇心旺盛だとそういう点では物足りないかも)。
とはいえ、お恥ずかしい話ですが僕はまだまだ技術力や経験が足りないばかりに、うまくいかないこと、苦労をおかけすることはたくさんあると思うんですが、「ちょっとぐらい手伝っても良いかな?」とか「こういう事できるけど、役立つ?」とか「仕方ねーなー、オレがサーバーサイドちょっと手伝ってやるよ」とか思っていただけたなら、働くかどうかはともかくとして、TwitterアカウントにDMでも飛ばしてもらえるとおうちで小躍りします₍⁽⁽(ી(*´ω`*)ʃ)₎₎⁾⁾

twitterhttps://twitter.com/sugi511



正直、僕はこの時期にアフリカというかこの事業に関われていることは幸運だと思っていて、なおかつインターネッツが大好きなので、僕が作るもの、やってることを通してアフリカの人(というと主語がでかいけど)が僕らとは違うフェーズのインターネットを通じてどうなっていくのか興味津々で溜まらないです。



まだまだ会社としても小さいしスタートしたばかりです。この後、100%の確率で大変なことが待ち受けてるのは分かっては居るんだけども、それでもなお「止められないな」とも思うし、「止まってはいけない」とも思うし、「止めてもいけない」とも思ったりします。大変だけど、面白い。人にオススメできるチームや事業ドメインだと思うので、ぜひ一緒にお仕事しませんか?というか、お手伝いでも大歓迎ですのでぜひご連絡をお待ちしております(っ・ω・)っ


よろしくお願いします!!!!