Mobile Factory Tech Blog

技術好きな方へ!モバイルファクトリーのエンジニアたちが楽しい技術話をお届けします!

nuxt/axios を使ってブラウザの Cookie を SSR 時に引き渡す方法

この記事はモバイルファクトリー Advent Calendar 2020 1日目の記事です。 こんにちは、ブロックチェーンチームでソフトウェアエンジニアをしている id:odan3240 です。最近会社で使っていた椅子と同じモデルの椅子を購入して QoL が上がっています。 認証に…

gitを自分で実装して内部を理解しよう

要約 git内部のデータ格納に関するサブコマンド、git cat-file と git hash-object を自分でPerlで実装しgit内のデータの保存方法について知る 目次 イントロダクション git内部のデータの確認 perl実装の紹介 実装 github.com イントロダクション 自己紹介 …

ISUCON10でPerlの参考実装をしました

こんにちは。id:kfly8 です。普段はヒューマンリレーションズ部でエンジニア組織開発をしています。 先日、ISUCON *1でPerlの参考実装をやらせてもらったのですが、とても楽しかったです!貴重な機会をありがとうございました。また、"あのISUCON"の運営裏側…

Vue.js で疑似要素に動的なスタイルを適用する

ブロックチェーンチームのソフトウェアエンジニアの id:odan3240 です。 Vue.js で、input タグの ::placeholder 疑似要素に動的なスタイルを当てたい場面がありました。 この記事では、その際の問題と解決方法について紹介します。 この記事のゴール Vue.js…

TechKaigi#1 ~隣のエンジニアが知らなそうなこと~ を社内で開催しました

こんにちは、エンジニアのid:tenmihiです。 この度弊社の社内勉強会の時間を活用して、TechKaigiを開催したので紹介したいと思います。 TechKaigiとは TechKaigiはモバイルファクトリーのエンジニアがどんな問題を抱え、どう解決してきたかを共有をする勉強…

インストールしてすぐ使えるfish shell入門

こんにちは!新卒1年目エンジニアのid:dorapon2000です。最近暑いですね。 さっそくですが、シェルを便利にカスタマイズしたい気持ちはあるけれど面倒だなぁとか、そろそろbash以外のシェルにも手を伸ばしたいという方はいるのではないでしょうか?今回紹介…

リモート入社した新卒が3ヶ月で学んだこと

こんにちは!4月に入社したエンジニアのDozi0116です。 5月に駅メモ!開発チームに配属されてから毎日コードと戦っています。 今回は自分が入社して1ヶ月の新人研修・技術研修 + 2ヶ月の現場配属で試したことや学んだことを紹介します。 意思疎通が難しい こ…

日々の作業をもっとサッとこなしたい!「ワンライナー勉強会」を開催しました

4月入社の新人エンジニアのxztaityozxです。趣味はdotfilesいじりです 皆さんは日々の開発でふと、調査やデータの加工が必要となったことはありませんか?私はたくさんあります。 ではそういった時、どうやって解決していますか?私はいくつかのCLIツールを…

PerlでJVMをつくろう

要約 JVMは任意の言語で作ることができるので、Perlで書いてみました github.com このようにクラスファイルを読み取り、それを実行することができます 今回は読者がJVMを書き始められるようにクラスファイルの読み取り方に焦点をおいて解説します(あまりPerl…

Perl 製の静的サイトジェネレータでも Netlify の Deploy Preview で動作確認がしたい

こんにちは、ブロックチェーンチームでソフトウェアエンジニアをしている id:odan3240 です。 モバファクには毎日1時間社内勉強会の制度があります。 tech.mobilefactory.jp 様々な目的の社内勉強会が開催されていますが、その中に一つ OSS への貢献が目的の…

社内勉強会を通じて DefinitelyTyped に新しいパッケージを追加した話

こんにちは、ブロックチェーンチームでソフトウェアエンジニアをしている id:odan3240 です。 モバファクには毎日1時間社内勉強会の制度があります。 tech.mobilefactory.jp 様々な目的の社内勉強会が開催されていますが、その中に一つOSSへの貢献が目的の勉…

Vue.observable でエラーの状態管理を行う

こんにちは、ブロックチェーンチームでソフトウェアエンジニアをしている id:odan3240 です。 ページをまたぐエラーを制御したい場合、グローバルな状態管理を行えるVuex が選択肢に上がるかと思います。しかし、Vue.js 2系に対応する 3系の Vuex は公式の T…

突撃!在宅の開発環境 2020年春

こんにちは。エンジニア組織開発責任者の id:kfly8 です。 はじめに 最近、COVID-19の影響で、在宅で勤務している方が増えているかと思います。モバイルファクトリーでは2月中旬から原則在宅勤務になり、家の開発環境をこの機に整えている声などを聞きます。…

Quragé Linkのsemver苦労話

はじめに こんにちは、エンジニアの@ringoh72です。 弊社のブロックチェーンチームでは、ブロックチェーン用のアプリケーションを簡単に扱えるようにするQuragé Linkというサービスを開発しています。 フロント向けライブラリである@uniqys/qurage-link-lib…

Perl::Critic の Policy を作ってチーム独自のコーディング規約チェックをする

概要 こんにちは、エンジニアの id:mp0liiu です。 自分は Perl でチーム開発をしているのですが、最近ある外部モジュールの使い方に関するチーム独自のコーディング規約が追加されました。 このコーディング規約に沿ってコードが書けているかどうかは人間の…

巨大なリポジトリのJenkinsからCircleCIへの移行においてshallow cloneとsparse checkoutで前処理を高速化する

はじめに こんにちは!モバイルファクトリー Advent Calendar 2019 24日目担当の@PikkamanVです。 今回は運用中のプロダクトのCIをJenkinsからCircleCIへ移行するにあたり特にハードルが高かった点の解決方法を紹介します。 オンプレのJenkinsサーバでフルテ…

はじめての技術イベント ~Vue.js for 2020に参加してきました!~

モバイルファクトリー Advent Calendar 2019の23日目の記事です。 ヒューマンリレーションズ部の@overallfactoryです。 普段は新卒の総合職採用を中心に活動しています! はじめに 12/11(水)に開催された「Vue.js for 2020」にスポンサー企業としてブースを…

エンジニアのみなさんへ、採用って楽しいよ!

この記事はモバイルファクトリー Advent Calendar 2019の22日目の記事です。 こんにちは、ヒューマンリレーションズ部の@chan_centerです。 約4年前にモバイルファクトリーに転職をしてきて初めてエンジニア採用を経験し、大変さを知りました。 現在は中途・…

チームの振り返りのファシリテーションで気をつけていることベスト5

はじめに この記事は モバイルファクトリー Advent Calendar 2019 の21日目の記事です。 こんにちは、新卒4年目のエンジニアの id:tsukumaru です。 4年目となり、後輩がかなり増えました。そして、今まで以上に後輩の手本となり、周りをリードしていくこと…

NestJS でサーバを起動せずに OpenAPI の仕様書を取得する

はじめに この記事は モバイルファクトリー Advent Calendar 2019 の18日目の記事です。 こんにちは、ブロックチェーンチームのエンジニアの id:odan3240 です。 NestJS では @nestjs/swagger を用いることで、コントローラーの定義から OpenAPI (swagger) …

生 Canvas を触って分かったこと

こんにちは、モバイルファクトリー Advent Calendar 2019 17日目担当の yunagi_n です。 さて、2019年も暮れになった今、 PixiJS や Konva など、便利な Canvas フレームワークがありますが、 このたび初めて生の Canvas (Context2D) を触ることになりまして…

MagicOnionでリアルタイム通信を実装してみる

はじめに モバイルファクトリー Advent Calendar 2019の16日目担当のshioiyanです。 モバイルファクトリーには部活動制度があり、自分はゲームジャム部という不定期にゲームジャムを行ったりする部活に所属しています。 最近ゲームジャム部で、.NET Coreおよ…

モブプログラミングの取り組み

この記事は モバイルファクトリー Advent Calendar 2019の15日目の記事です。 こんにちは.今年度よりエンジニアとして入社した新卒のmaekenです. 自分が所属している開発チームでは,モブプログラミングを開発手法の選択肢として選べるようにしています. …

Devcon 5に参加してきました!

こんにちは!ブロックチェーンチームエンジニアの pikkaman です。 去る2019年10月8日〜12日にEthererumの開発者向け国際カンファレンスであるDevcon 5が大阪南港 ATCホールで開催されました。 日々ブロックチェーンアプリの開発に取り組んでいる我々モバイ…

キャリアアップ支援制度を利用してArchitecting on AWSを受講しました

はじめに モバファクのCPE*1として普段は開発基盤・運用基盤を整備しているid:masasuzです。最近のお仕事としては、CircleCIのオンプレミス版を社内に導入しました。この話もどこかで書きたいですが、今回はモバファクにあるキャリアアップ支援制度を用いてA…

Mapbox GL JS を使って ブラウザで動作可能な地図を作る

はじめに この記事は モバイルファクトリー Advent Calendar 2019の11日目の記事です. こんにちは,今年度よりモバイルファクトリーに入社した yasuda です 今回は,ブラウザ上で地図を描画するライブラリである MapboxGL JS と,その使用例について紹介し…

TypeChain で型安全に TypeScript からスマートコントラクトを扱う

この記事は モバイルファクトリー Advent Calendar 2019の4日目の記事です。 こんにちは、ブロックチェーンチームでエンジニアをしている id:odan3240 です。 今回は Ethereum のスマートコントラクト (以下コントラクト) を TypeScript から型安全に扱う方…

Perlでモックを多用したテストを書いてわかったこと

この記事はモバイルファクトリー Advent Calendar 2019 3日目です。 こんにちは、エンジニアのid:yumlonneです! 昨年のモバイルファクトリーAdvent Calendar 2018では、Perlのテストモジュールの紹介という記事を書きました。 今回は単体テストでモック*1を…

aliasedでFunction::Parametersの型指定を簡潔にする

この記事はモバイルファクトリー Advent Calendar 2019 2日目の記事です。 ヒューマンリレーションズ部シニアエンジニアのid:kfly8です。昨日、id:karupaneruraが公開していた2019年の最先端のPerl開発ボイラープレートにて、 Function::Parametersで (Insta…

初回の1on1は何をする?まずは自己開示をしてみる。

この記事はモバイルファクトリー Advent Calendar 2019 1日目です。 ヒューマンリレーションズ部シニアエンジニアのid:kfly8です。普段は組織横断して人材開発などを行ったりしています。その中で、メンバーにとって初回の1on1はどうすると良いか聞かれるこ…