K ikeda's blog

WEBアプリ開発、データ分析などについて書いていきます。

Twitter就活をしてみたところ

先日(2024年1月19日)、私はX(旧Twitter, 以下Twitterと呼びます)にこのようなツイートを投稿しました。

Twitter上で希望条件や自身の実績などをツイートして就職活動を行う、 いわゆるTwitter就活というものです。

投稿した時は「大した反響もないだろう」と期待していなかったのですが、 現時点(2024年1月22日)で9件のリプライ、20件以上の引用など、 予想外に数多くの方からの反応を頂きました。

その結果、現在までに4名の方とカジュアル面談のような形でお話させて頂いており、 この後もあと5名ほどの方との面談を予定しています。


そのような現在進行中の話ではありますが、実を言うとこの2, 3日の間に、 私の意向がツイート当初から相当に変わってしまいました。

どのように変わったか、一言で言うと、

就職よりも、業務案件の受注、あるいは起業がしたいと考えるようになりました。

またそのため、案件を発注してくださる方をこれから探したいと思っています。

ということで、当初とは全く話が違うということになってしまいました。

採用を真剣に検討して反応頂いた皆様には大変申し訳ございません。

このような心変わりが起こった経緯をご説明し、 また自分自身で自分の心境の変遷を記録するためにも、この記事を書こうと思います。

自己紹介

現在私は、関西在住の大学院生です。

これまでに、個人開発でFlutterというフレームワークを使ってモバイルアプリを制作してきました。 また学部生時代にはPythonによる機械学習関連のアルバイトに参加していたり、 最近では、Next.jsというフレームワークでWebアプリを制作中です。

こんな感じで様々な分野に興味があるのですが、 現在はフロントエンドと呼ばれる、ユーザーに直接触れる部分の開発をメインとして取り組みたいと思っています。

経緯

最近様々な個人的事情により、 「2024年4月から東京に移住したい」 と強く思うようになりました。

そこで2023年冬ごろから、通常の新卒採用という形で就活をはじめました。 しかし、見つけられたのは25卒、つまり2025年4月開始での採用ばかりでした。

それも当然で、新卒採用というのは普通、卒業の1年前には動き出さないといけないものです。 またIT系の企業は早期選考が多く、さらには就活を有利に進めるためにはインターンに参加せねばなりません。 そういうことを言い出すと2年近く前から準備が必要だったりします。

2024年4月に新卒で就職するには2022年12月 - 2023年3月ごろに就活に取り組む必要がありますが、 その時期の私は進学することしか考えていなかったのでした。

そのような状況に立った私は、今年春から東京で暮らすための収入を得るのは不可能なのだろうかと、もどかしく思っていました。

「だったら通常の新卒採用という一般的な窓口ではなく、 個人相手に声を投げかけてみればいいのではないか」と思い立ち、 上掲のツイートをするに至ったのでした。

条件について

希望条件は上掲のツイートに書いたのですが、後になって変化がありましたので、説明させて頂きます。

まず当初のツイートでは次のような希望条件を掲載していました。

1. 2024年4月から東京で勤務したい

2. フロントエンド (JS, TS, React, Nextなど)の開発案件であること

3. 年収 手取り180万円以上

1については変わっておらず、最優先としたい項目です。

2についても基本的に変わっていません。 補足するなら、フロントエンド領域のみにしか興味がない訳ではありません。 最終的にフルスタックを目指しており、バックエンド、インフラ、AIなど幅広く興味を持っています。 その中で今最も自分が習得したい領域であり、また興味を持って取り組める分野としてフロントエンドを挙げたのでした。

3について、複数の引用リツイートで「年180万円というのはあまりに安すぎる」という声を頂きました。 これは至極その通りなのですが、私の意図としては年180万円頂ければ完全に満足というわけではなく、 耐えられるギリギリの額という意味で提示したつもりでした。 (現状私は給付型の奨学金的な制度で、月15万円の給付を受けて暮らしており、年180万円あればギリギリ生き延びられるかなと思いました。)

また気持ちとして、

「年収は少なくても良いので、とにかく雇って頂きたい」

「『今年春から雇って欲しい』と時期的に無茶を言っているので、年収については贅沢は言わないでおこう」

という感覚でした。

ただそれにしても非現実的な額を書いてしまいました。

気持ちの部分は変わっていないため、条件を変えて希望年収を上げたいという話ではないのですが、 単に「180万円」と書くだけでは、様々な誤解や不信感を招きかねず、浅はかだったなと反省しています。

希望条件の追加

ツイートした後になってよく考えたところ、以下の条件も必要となってくることに気づきました。

4 週5フルタイムで勤務するのではなく、週に1度程度の頻度で平日午後に仕事を入れない時間を確保したい

これは先述の個人的事情の関係で、そもそも東京に行きたいのはこの時間を確保するためであり、そのため優先度の高い条件です。 そのためこの条件をツイートにきちんと書いておくべきでしたが、投稿時には完全に失念していました。

5 引越し費用を2024年4月までに確保したい

4月から東京で暮らすため、3月に引っ越しをしたいのですが、そのためには引っ越し費用が掛かることを考慮していませんでした。 費用は約30万円と見込んでおり、現状では蓄えがありません。 とはいえ1,2ヶ月ほど友人宅に転がり込んで、資金の目処が立ってから引っ越すこともできるので、 この点の重要度は比較的低いと言えます。

6 継続的な収入として、最低月20万円(欲を言えば月30万円)程度の生活費を確保したい

春以降、東京で家賃を払いながらある程度文化的な生活を送るには、上記程度の収入が必要になると思います。

これらを考慮しているうち、特に4の条件をきっかけに、 私が本当に取りたい選択は就職なのか、疑問が芽生えてきました。

現状のプラン

ということで最初に述べた通り、今は就職するのではなく、 案件を発注してくださる方を見つけ、業務案件の受注を目指したいと考えています。 また業務にあたりまとまった出資を受けるべき場合は、起業することも視野に入れています。

直近のプランとしては、フリーランスエンジニア向けのサイトに登録し、案件を探します。

またFlutterあるいはReact Nativeで、toCの個人開発アプリをリリースし、収益化を目指したいと考えています。

それと並行して、リファラルというべきか、 今回のTwitter就活での出会いも含めた、あらゆるコミュニティの伝手を頼らせて頂き、 何かしらのお仕事をさせて頂けないか、探そうと思っています。

考察

このような計画に対して、「一旦就職して2-3年かけて技術を身につけてから、起業なり案件受注なりをした方が良い」というご助言もあると思います。 これはキャリア上の合理性としては全くその通りだと思います。

しかし「週1の午後の自由に使える時間の確保」という条件を譲りたくないと考えているため、現状週5フル勤務はできません。 この点で、コミットが求められる企業には向かないことになってしまいます。

「それならフルリモートや、フレックスタイム制の企業への就職を選べばいいのでは」とも考えられると思います。

それもその通りで、実際にそのような勤務条件の企業で、選考に進ませて頂けそうなお話もあります。

ただ、そもそものスタンスとして、私は「就職がしたい」とは心からは思えていないことに気付きました。 就職という行為を、上記の希望条件の実現ための手段としてしか捉えられていないのです。 そうするとどうしても自分本位になり、採用側と私でwin-winとなるような信頼関係を築くのが難しいと感じました。

それならばいっそ、自分がどう過ごすか自分の責任で決められる、案件受注あるいは起業を目指したいというのが、現在考えていることです。

また、自分自身が中心となって活動することへの単純な憧れというのもあります。 以前から私は面白い生き方がしたいと思っていました。 当然厳しい状況が予想されますがそれを承知で、より心が躍る方向へ進みたいと感じています。

業務案件を募集します

ということで、正式には別途ページを作るなどして募集を行うつもりですが、この機会にここでも告知させて頂こうと思います。

現在、私に依頼していただける開発案件を探しております。 モバイルアプリ開発、Web開発など、 IT系の開発業務を中心に、他にも分野を選ばずお受けしたいと思っています。

特にFlutterによるモバイルアプリ開発、および Pythonによるデータ分析やDXに関して、お力になれるのではないかと思います。

もし案件を頂ければ、全力をもって取り組みたいと考えています。 お話だけでも結構ですので、ご興味をお持ちの方はお気軽にご連絡ください。 メール、あるいはTwitterのリプライやDMでも結構です。

メール: kikeda1102☆gmail.com (☆を@にご変更ください)

Twitter: @kikeda1102

おわりに

という訳で非常に雑に経緯をまとめると、

「今年春から東京行きたいけど、収入源がない。 就職は今からじゃ間に合わないし、無理か....」

Twitter就活してみる

→「すごいいろんな反応をいただいてる。雇ってくれる所はあるかもしれない。

けど何なら就職しなくても、めちゃくちゃ頑張ったら自力で収入得られるんじゃないか」

→「じゃあ、めちゃくちゃ頑張ってみるか」

という感じです。

今後どうなることやらですが、 少なくともツイート前に感じていたもどかしさは完全に解消されました。

発言してみることの大事さと、反応してくださる人々がいることのありがたさを学びました。

これまでに面談してくださった企業の皆様、誠にありがとうございます。 お声がけくださった方の中には大学院を休学や中退して働かれている方も複数おられ、親身になってくださる方ばかりでした。

そして当初のツイートと全く違う話になってしまい、 改めて、採用を真剣に検討して反応頂いた皆様には大変申し訳ありません。

結局、就職はしないことになったわけですが、今後予定している面談については、 私としては見聞を広げられるとても貴重な機会ですので、 引き続きお願いしたいと考えています。 (企業の方へ: 話が違うので面談をしたくないという場合は、遠慮なくキャンセルなさってください。)

以上になります。 今後も進展があれば情報発信していこうと思います。

今回の件をきっかけに、面白い生き方へと踏み出せる気がしており、 実際ここ数日、今まででは考えられない集中力を発揮して開発に取り組んでいます。  

今後ともよろしくお願いいたします。

人間単語帳アプリを作りました

お久しぶりです、kikedaです。

最近、私は個人開発で「人間単語帳アプリ」なるものを制作しました。

先日、iOS版が完成しました。 iOSユーザーの方、ぜひDLして使ってみてください。

HitoMemo - 人間単語帳

HitoMemo - 人間単語帳

  • Kenya Ikeda
  • Utilities
  • Free
apps.apple.com

またリポジトリはpublicにしていますので、以下からソースが見られます。

github.com

今回この記事で、開発の流れを紹介させて頂きたいと思います!

目次

1.どんなアプリか

2.技術面、特徴

3.制作のきっかけ

4.苦労した点

5.現状と今後

どんなアプリか

「人間単語帳」は、知り合った人の名前やプロフィールを記録し覚えるためのメモアプリです。

アプリのメイン画面では、登録してある人達のカードが一覧表示されます。 カードをタップすると詳細画面に移り、詳細の確認および編集/削除ができます。

登録画面では、名前に加えて、 * 所属組織(学校、職場、...) * 特徴(出身、趣味...) * その他エピソードなど

といった、その人のプロフィールに関するメモを箇条書きのような感覚で登録します。

特徴的なのが、クイズ機能です。 問題数を選択してスタートすると、プロフィールだけが表示され、対応する正しい名前を選択肢から選ぶというクイズが始まります。 このクイズによって単語帳で英単語を覚えるような感覚で、知り合った人の名前を暗記することができます。

以上が本アプリの主な機能です!

技術面と特徴

開発にはFlutterを使用しています。 iOS, android, その他様々なプラットフォームを統一的に開発することができる個人開発にはもってこいのフレームワークです。

単純なアプリなので、基本的には標準のライブラリばかり使用しています。 パッケージを管理するファイルpubspec.yamlの記述は現状これだけです。

(今後画像登録機能を追加したり、多言語対応などでもう少し増えるとは思います。 また実は初めは状態管理にRiverpodを使用していたのですが、今の自分にはとっつきづらく😅、StatefulWidgetで書いています。)

データ永続化のためのDBとしてはIsarを採用しています。 こちらは数あるFlutter向けのローカルDBの一つですが、ブラウザでレコードの状態が確認/編集できるInspectorなどの機能が開発するうえで非常に便利です。 こちらも個人開発にはおすすめです。

制作のきっかけ

  • 「久々に会ったこの人、パッと名前が思い出せない、何さんだっけ...?」
  • たまにしか会わない人との細かいプロフィールを忘れてしまう。
  • 他の人と名前やエピソードを間違えてしまい、気まずい思いをする。

全て、自分自身で経験済みです😇

これらの悩みを解消するため、このアプリを作ろうと思い立ちました。

苦労した点

DBを使う以上、読み出しや書き込みで非同期処理が必要になるため、FutureBuilderやStreamBuilderの扱いで苦労しました。 また関連してレコードのプロパティであるlistを編集する際、組み込み関数のadd()やremoveAt()が使えず、代替表記することが必要でした。

静的解析ではエラーにならず実行後にExceptionが発生することも多く、ブレークポイントを張ってのデバッグも必要になりました。

これらエラー解決にあたり、一人だけでは難しいと感じたので、オンラインのFlutter開発コミュニティや、大学のIT系コミュニティにも顔を出すようにして、有識者の皆さんにアドバイスを受けながら進めています。 こういったプロの方々の助けにより何とか解決できたので、今となってはとてもいい勉強になったと感じています。

現状と今後

今後はメモの入力動作など、編集機能の細かいところを詰めていきたいと思っています。

またこの経験を活用して、より高度なアプリ開発に取り組んでいきたいです。

感想や改善案など、反応いただけると何でも嬉しいです!

ご覧いただきありがとうございました。

卓球の得点板アプリを作りました

今回はタイトルの通り、卓球の得点板アプリを作りました。

Flutter製で、iOSAndroidそれぞれリリースしています。

iOS

Table Tennis Simple Scoreboard

Table Tennis Simple Scoreboard

  • Kenya Ikeda
  • スポーツ
  • 無料
apps.apple.com

Android

play.google.com

機能、実装

シンプルに、点数のカウントができます。

コートチェンジ、デュースにも対応。

undo, clearもできます。

シンプルなアプリのため、状態管理手法などは採用せずFlutterデフォルトのライブラリのみで実装しています。

直感的な操作性と、本物の得点板そっくりのデザインにこだわりました。

感想

今回初めてのモバイルアプリリリースを達成できました。

ストア申請は手続きが多く大変でしたが、やりきってみるとストアに自分のアプリが並ぶ喜びは大きかったです。

今後はより技術的に高度なものを目指し、アプリ個人開発を続けていこうと思います。



ではまた次の投稿で。

arXivの新着論文からキーワードを含む論文をチェックする自動ツールを作りました

今回はタイトルの通り、arXivの新着論文からキーワードを含む論文をチェックする自動ツールを作りました。

github.com

arXivとは

arXivとはプレプリントサーバ(査読前の論文を投稿するサーバ)です。

arXiv - Wikipedia

数学、物理、情報系の分野を中心に世界中で使われています。

特に物理のhep-th (high energy physics - theory, 素粒子理論 )ではarXivデファクトスタンダードとなっています(arXiv自体がこの分野の研究者により設立されたため)。

機能、実装

このツールでは、最近投稿された論文全体から設定しておいたキーワードをabstractに含む論文を検索し、log.csvに書き出します。

データの取得にはarxiv APIpython wrapperであるarxiv.pyを使っています。

pypi.org

本来、arXiv APIでの論文情報取得はhttpでgetリクエストするだけの1行で済みます。

しかし今回、生のarXiv APIのままだと日付指定による取得がすぐには出来なかったので、wrapperを使っています。

またGitHub Actionsにより毎日自動で更新させています。

GitHub上でubuntuを立ち上げ、Python環境を構築し、main.pyの実行後、リポジトリにcommit, pushさせています。

その際、投稿日が実行時点の3日前から1日前のものを取得するようにしています。

というのはarXivは土日は更新がなく、金土日ぶんの投稿が月曜に一気に更新されます。

よって前日だけの取得だと、金曜と土曜の投稿を取り逃がしてしまいます。

そのためこのような処理にし、重複は取り除いて処理しています。

感想

この分野ではarXivの新着論文は毎日チェックするべきなのですが、自分の研究に関連のある論文でも見落としがあることもありえるので、それを防ぐ補助的な用途として実用的なものが出来ました。
必要に応じてメールやSlackへの通知なども実装してもよさそうです。

参考になったサイト

arXiv API Access | arXiv e-print repository

PythonでarXiv APIを使って論文情報取得、PDFダウンロード | note.nkmk.me

arXiv API を用いて論文情報取得!(入門編 / python) | AIリサーチコレクション



簡潔ですがいったん以上です。

ではまた次の投稿で。

都道府県データの可視化サイトを作りました

はじめまして、K ikedaと申します。

物理系の大学院生をやりながら、趣味としてWEB開発、オーディオプログラミング、機械学習などに興味を持っています。よろしくお願いします。

今回はWEB開発の習作として、都道府県データの可視化サイトを作ってみました。 都道府県ごとの様々な統計データを地図とヒストグラムで可視化してくれるというものです。

ロードに少し時間がかかりますが、良ければ見てみてください。

https://prefecture-stat.herokuapp.com

都道府県データマップ
都道府県データマップ

このサイトでは、総務省統計局データ「統計でみる都道府県のすがた」を日本地図上にコロプレスマップとして描画します。

このオープンデータには人口・世帯、自然環境、教育、福祉・社会保障…など12の大項目があり、 人口、出生率から大学進学率、犯罪率、家電の普及率などなど、非常に幅広い都道府県別の統計情報が記載されています。

制作にはPythonのWEBワークフレームであるDashを使用し、地理情報はgeopandasで扱い、Herokuにデプロイしています。

GitHubリポジトリはこちらです。 github.com

app.pyがメイン部分で、plotlyのcholopleth mapで描画を行なっています。

今後もこんな感じで、色々な小さい制作物をどんどん作って行けたらいいなと思っています。

よろしくお願いします。