2014年3月を振り返る

やったこと

  • 技術書を読んだ

クラウドデザインパターン2冊は読了、実装は試してないので後ほど試そうかなと。インターフェースデザインの心理学は読んでる途中です。

  • AWS勉強会に行ってきた

クラスメソッド社のAWS勉強会 in 北海道札幌!に参加してきました。懇親会も行きました。これは別記事で書きましょう。

ドラクエ10楽しい!ってことで、1年振りに復帰してプレイしています。

  • 旅に出た!(リアル)

2週間弱、北見から札幌~東京~熊本~福岡~東京と旅して参りました。元同僚や大学の先生&後輩など色んな人に会ってきました。なかなか濃密な時間でした。

わかったこと

  • 数値として可視化されていると、やる気が出やすい

ドラクエ10をプレイしつつ思ったのですが、数値目標って非常に重要ですね。旅に出る前に全職レベル40以上に!という目標から、レベル上げにかかる時間を計算し、逆算して順調に2週間ほどかけて達成できました。リアル世界でも数値化して表現することで目標達成までスムーズに動けるのではないかなと。これがいわゆるゲーミフィケーションってやつですかね。そうです、ただネトゲで遊んでいたとかそういう事ではないんですよ!

  • 技術トークするとやる気が出る

元同僚たちに会ってご飯食べながら色々と話して来ました。札幌では6時間、東京では8時間ほど・・・別部署で一緒にお仕事はしたことないのですが、価値観が近い方たちなので非常に楽しかったです。話してると、新しい考え浮かんだり、まとまったりしますねー。

  • 定期的に外部からの刺激がある方が人生楽しい

九州は初めてだったのですが、全くの異文化で楽しかったです。普段はずっと家で、週に2回コンビニに行くだけ、という生活を平気で送っちゃうんですが、適度に刺激があったほうがいいですね。自分の知っている世界だけで過ごしていると、発想がワンパターン化してしまう気がします。

次にやりたいこと

  • 交流の幅を広げる

元同僚と週2回Skype会議はしているのですが、特にコミュニティに属しているわけでもなく、あまり技術トークすることもないので、この辺り話せる人は増やしたいかなーと思います。ドラクエ10を再開したのも交流という点が大きくて、ネトゲって本当に色んな人に出会うので面白いんですよね。別ネトゲの10年前からの知り合いは今でも交流あったりするのですが、自分の知らない世界の人の話とか結構面白いです。

  • しゅうかつ!

そろそろ次のお仕事先を本格的に探したい

AWSクラウドデザインパターンガイドを読みました

前提

  • クラウドって結局何をどうできるんだろう
  • AWSの名前は知ってるけど、EC2以外に何があるの?

・・・という状態で読みました。

設計ガイド

Amazon Web Services クラウドデザインパターン 設計ガイド

Amazon Web Services クラウドデザインパターン 設計ガイド

内容はシナリオベースで、この課題のときにはこういうパターンで解決する、というものなので、何ができるのかを把握するにはいいと思います。具体的にどういう設定にするかは記述されていません。内容は http://aws.clouddesignpattern.org/ で、書籍の48パターン+αが記載されているので、ブックマークにいれておいていいかも。手元においておきたい人は書籍を買っていいかと思います。

実装ガイド

Amazon Web Services クラウドデザインパターン実装ガイド

Amazon Web Services クラウドデザインパターン実装ガイド

こちらもシナリオベースで解説されていますが、実装ガイドということで、「動画配信サイト」「Eコーマスサイト」「販促キャンペーンサイト」の3パターンで具体的にAWSの画面と何を設定するかまで書かれています。私は2章までは実際に動かして試しましたが、3章以降はドメイン取得する必要があるようだったので試していません!スナップショットを取ったり、スペックの変更をする程度なら数クリックで可能、ということは分かりました。

感想

クラウドについて全く知らない人が概要を把握する&入門用として読むべき、といってもいいぐらいの書籍なのではないかと思います。AWSで複数サービスを組み合わせるだけで可能なことが多いので、知っているだけで別世界になるかなと。もう全部クラウドでいいんじゃないかな(仮面ライダーのマンガ風に)

AWSで仮想プライベートクラウド!ってことが出来るのはびっくりしました。現実的には一発で環境をクラウドにまるっと全部移行、というのは難しいので、既存環境と併用できるのは大きいですね。お仕事でサーバ発注したことはありますが、数ヶ月かかった上に、部品組み込みミスで最終的に全て揃うまで半年!なんて悲しい事件もありました・・・。あとスペックは正直どの程度がいいか困るので、柔軟に変更できるのはありがたいです。壊れた時のために予備サーバ購入、というのも解消できるのはありがたい。・・・オンプレミスでの運用管理で覚えたことが全てムダになるとは思わないですが、クラウドを活用するなら発想の転換が必要ですね。面倒な部分はクラウド活用でずいぶんと楽になるなー、という印象です。いやホント絶対こっちの方が楽。

2014年2月を振り返る

やったこと

色んな話をまとめて聞けるので、行ったことない人には是非おすすめしたいです。簡単に意識が高まります。そしてそれを継続するのが難しい。

  • ブログを書いた

あ、全然書けてない。けど1歩ずつを大事にしていこう。まず週1回ぐらい目指しますか。

わかったこと

  • やることを絞ったほうが効率が良い

今さら感はありますが、全方位的にやりたいこと&やってみたいことがあると集中できません。マインドマップソフト使ってGTDっぽいことはやってるんですが、WIP制限はしてなかったので、その辺り改善の余地ありかなと思います。

  • 勉強会等で意識が高まった時に新しいことにチャレンジする

新しく何かを始める時ってエネルギーを使うので、意識が高まってやる気に満ち溢れてる時に始めるとガンガンいける気がしますね!あとは継続する仕組み。

  • 健康第一

軽い鼻風邪で熱はなかったんですが、2月は2回もダウンしてました。布団に包まって本読むぐらいしか出来なかったので、気を付けたいです。いくら家の中が暖かいからといってハーフパンツ+Tシャツスタイルはマズイか・・・!

次にやりたいこと

前職は完全に閉鎖された空間で外の世界に出られなかったので、クラウド周りに疎いです。AWSはなんとなくEC2に触ったぐらいで全く使いこなせてないので、改めて入門してみようと思います。

  • 積み本になってる技術書を読む

これ面白そう!って買うものの、読んでない技術書が残ってるので片付けたいと思います。趣味のライトノベルは月10冊以上読むのでどんどん消化してますが、技術書はヘビーでね・・・!習慣化を目指そう。

参加した勉強会・カンファレンス

参加したら随時更新する感じにしましょう

2015

2014

2009-2013

デブサミ2014に参加してきました

2月13日(木)・14日(金)、雪の降る中、目黒雅叙園まで行ってまいりました。あれっ?みんな雪で傘さすの?あっこんな人混みでやめて刺さる!刺さるよ!危ないよ!と思ってましたが、身体についた雪がすぐ解けてグチャグチャになっちゃうんですね・・・北海道の場合はサラサラ雪で傘はささないので、謎が解けました。

デブサミ2014、講演関連資料まとめ

サクッと簡単に感想をば。

13日

【13-B-1】サーバプロビジョニングのこれまでとこれから

Chefは使っていたけど、テスト駆動インフラ、Immutable&Disposableというところまでは踏み込めていなかったので試しておきたいなあ。ServerSpec、Dockerは一度使っておこう。

【13-B-2】グリーにおけるChef導入事例~既存の資産を活かし新しい技術を導入する~

既存システムの管理はそのままで、新規サーバにChefを適用していってるとのこと。ChefのReportHandlerでログ出せるのは知らなかった・・・

【13-B-L】テスト自動化を見直そう!自動化への投資が開発チームをクリエイティブにする

技術的にどうこうというより、プロセスを見直すとか担当者のスキルセットは合っているのか、とか根本的なところから見直そうってお話だと思いました。

【13-D-3】フロントエンドエンジニア(仮)~え、ちょっとフロントやること多すぎじゃない!?~

GUIツールだと数多すぎたけど、Gruntでまとめて管理できる。黒い画面(ターミナル)を恐れずに使おうってことでしょうか。Gruntの名前は聞いたことあったけど、管理ツールとは知らなかった。フロント周りの環境整備も整理しておきたいなあ。

【13-B-4】事例から学ぶDevOps実現のためのプラクティス

顧客や運用も含めてやりましょうって事で、あまり目新しい話はなかったかな・・

【13-D-5】[U30]フロントエンド開発者になるための切掛と行動/酒巻瑞穂、ソフトウェア開発を勉強し始めて3年間でやったこと~After~/きょん

勉強会に参加したりするのはきっかけの一つで、仲間であったり、憧れの人であったり、必要なものは自分の中の情熱を世界に発信していく勇気!

【13-B-6】mobile backend活用事例から見る「これからのスマホアプリ開発とクラウドの展望」

スマホアプリのサーバ側の基本機能は用意してあるからフロント側に集中しましょうっていうお話でしょうか。mBaaS【mobile Backend as a Service】というのは初めて知りました。ニフティクラウドってこんなのもやってたんですね。運用考えると、なるべく作らないってのは大事かなと思いますが、どこまで作らずにいけるのか。無料プランでも十分に使えるぽいので、ちょっと試してみたいなー

【13-B-7】何故クックパッドのサービス開発は日々進化しているのか

ユーザーサポートも含めてGitHub中心、プルリクベースで進めてるのはすごい。「正しいと思ったら行動して良い。誰かの許可とかとらない。」「なるべくルールは作らず、文化を作る」ってのは心に響きました。社員数が少なめだからこそ出来るのかもしれませんが、色々と根回ししたり、エライ人に話しても結局いつまでも放置されて、何も変えられないってよくあったので・・・そういう文化の中で働きたいですね。モチベーション高く取り組むために考えられてると思います。

14日

【14-B-1】やる気を引き出す組織風土のつくり方

サイバーエージェント、20代30代が97%ってものすごいですね。そういう環境の中で過ごしてみたい。取締役の2年毎の入れ替え制度など、若い人でも上に行く仕組みを取り入れてる。会社規模が大きいので、文化というより仕組みでモチベーション高めるための工夫をしているみたいですね。

【14-B-2】グリーを支えるデータ分析基盤の過去と現在

ソーシャルゲーの膨大なログを解析するための仕組み。非エンジニアでも自分で好きなデータを取れるようにってのはいいですね。大規模サービス運用は縁がなかったので、この辺り具体的にどうなのかは全然分からない。

【14-D-3】越境する開発~あの日開発していたサービスの名前を僕たちはまだ知らない~

「正しいものを正しく作る」ためにどうしていくか。カンバンは大好きなんですが、仮説検証型と最短距離型の使い分けは出来ていなかったので、意識したいと思います。書籍「リーン開発の現場」は一度読んだんですが、もう1度読み直そう。

【14-B-4】Amebaで取り組んでいるネイティブ開発事例

Androidのネイティブ開発のお話。GitHubでプルリクベースの開発でJenkins使ってたり開発標準化に力を入れて、誰でも同じように開発できるようにを目指しているとのこと。EclipseでAnt・・・GradleからAntタスク使うのは出来ないのかな?個人的には、Eclipseの環境設定までリポジトリに含めて統一するのはやり過ぎ感ありますが、どうなんだろ。

【14-A-5】エンジニアだからできる?自由な生き方

増井さんの名前は知らなかったのですが、PukiWikiも使ってたし、Wri.peとかミイルとか使ってますし、びっくりしました。好きなものを作って生きていくために、コツコツと点と点をつないで、世界を広げていく。突然なにか出来るようになるわけじゃあないので、地道な活動続けていこうと思いました。

【14-A-6】Play2/Scalaドメイン駆動設計を利用した大規模Webアプリケーションのスクラム開発の勘所

ニコ生をPHPからScalaで書きなおした話。かなり濃い内容でした。一時期ドワンゴからの離職者が多いと話題になってましたが、開発標準化していない状況で人員拡大してバラバラになったパターンでしょうか。カウボーイ個人開発からアジャイル開発体制へ移行・・・など、開発体制を整備して立て直したようで、今は以前よりも安定しているような印象を受けました。C++エンジニアじゃないけど、ちょっと働いてみたいなと思いました!

所感

これから

デブサミに初めて参加したときは、こんな世界があるのだと衝撃を受けました。今はキーワードなら聞いたことあるレベルにはなりました。といっても知らないことの方が多い。技術はどんどん進化していますが、現場で実践できているところはまだまだ少ないようです。ネットゲームでいう、レベルキャップが開放されていって、レベル差がどんどん広がっていくような状況に見えて仕方ない。先人たちが着々と攻略情報もとい高速道路を作ってくれてはいますが、それでも現場で実際に取り組めないと、なかなか前に進めないよなあ、という点がもどかしいです。自分のレベルも上げたいけど、すべての人がレベルを上げやすい世界にしていきたい!

現実にはメタルスライムはぐれメタルもいないのでホイホイうまくはいかないのですが、地道に戦ってレベルを上げて、冒険する世界を広げにいこう!

2014年も1ヶ月が過ぎたので振り返る

気が付いたら2014年もあっという間に1ヶ月。 忘れないうちに、簡単にやったことでもまとめておこうと思います。

やったこと

わかったこと

フレームワーク、ライブラリ等便利なものが整備されてて、ある程度のラインまではあっという間にできるけれど、そこから先に進むためには地道に力を付けないといけませんね。ということで、ひたすら慣れるまでは簡単なもの繰り返し開発ですかね(-_-)

  • 作りたいものがないとモチベーション維持できない

個人だと「絶対にやらなくちゃいけない」ものってないので、ただ勉強しようと思ってても、なかなか手が動きません。こういうところは会社に所属していると、課題解決のために動けるんで楽だなあとは思います(;´Д`)

  • 自宅で作業するには誘惑に負けない心の鍛錬が必要

最近は自宅でリモート開発で仕事してますって話も聞くようになりましたが、相当難しくないですかコレ!?丸一日時間があるとダラダラやってしまうことが多くて、集中する時間帯を作るのが難しい。そして逆に集中して休憩なしでやりすぎて燃え尽きるとか、人の目がない分、自分でバランスを取るのが難しいです。スタバでドヤ顔でMacBook Airを弄るとかいう手もありますが、今住んでいる町に喫茶店がないという点を除けば何も問題はありません。コワーキングスペースも遠すぎなんですよ!!

次にやりたいこと

  • ブログを書く

ふと調べ事をしようと検索したら、元同僚のブログが出てきてびっくりしました。役に立ちました。僕も書きたいです。ということで書きました。趣味の事を書くときはネタまみれAAまみれで書くことも多かったので、真面目に文章を書くのは苦手です。就活を考えれば超クールなアプリを作ってGithubにコードでもあげたほうがいいとは思うんですが、正直なところ基礎を勉強しなおしてる段階なので、焦らずにまったりブログに勉強したこと書いてまとめる習慣を作るところから始めたいと思います。

  • 作りたいものを見つける

2月はライブのために2週間ほど東京に滞在するので、せっかくなのでデブサミも行ってきます。一昨年から参加しているので3回目となります。今年はノージョブなので、受付の名刺を出すところで「はい、無職です(ニッコリ」と華麗に切り抜けられるかが一番の難関ですね!!!!今月は色々予定があって、あまり家でじっくり取り組む時間はないので、外に出かけてなにか心の琴線に触れるものを見つけるようにユルくいきたい所存でございます。

COBOLから逃げ出して退職してました

2013/09/30をもって、新卒で入社して4年半勤めたSIerと呼ばれる会社を退職していました。既に1ヶ月経ちましたが、せっかくなのでやったことでも振り返ろうと思います。

北海道にて、メインフレームアセンブラで作られたシステムを、画面系VBビジネスロジックCOBOLのシステムとして再構築するお仕事を行っている職場でした。もちろんウォータフォールです。30代前半~半ばの社員が少なくて、40代以降がいっぱい。オブジェクト指向?若いやつらにやらせればいいだろ?とか、そんなこと言うオトナな人は一部だけでしたが、最新技術動向とかあまり興味のない人が多い職場でした。・・・どこもそんなもんでしょうか?

VB+COBOL

新人として最初の仕事は、先輩の作った詳細設計書をもとにプログラムを書くことでした。VBは既に画面にコントロール配置済みで、詳細設計書にはボタンが押された時にCOBOLに渡すパラメータまで細かく書かれていて、まさにコーディングだけ、でした。COBOLは10本ほど書きましたが、いやあ、うっかり一行80文字オーバーしててコンパイルエラーとかしばらく気が付かなかったのがいい思い出です(´・ω・`)

開発基盤チーム

結合テストに入った段階で異動になり、退職までは開発基盤チームで過ごしていました。直接お客さんと接することはなく、社内の開発標準の改訂等々、社内の方と関わることが多かったです。あくまでも「標準」なので、各プロジェクトの共通項を見出す・・・という視点が求められていたと思います。実際に調べてみると、各プロジェクト好き勝手にやっていて頭を抱えまくりました。

自社製フレームワークの構築・運用

チュートリアルの作成と教育も担当し、この仕事のおかげで、オブジェクト指向という概念が理解できたと思います。でもXML地獄はもう2度と味わいたくない。学生の頃はPHPActionScriptしか触ったことはなく、手続き型でしか出来ていなかったなあ、と改めて思いました。

デブサミに参加した

Developers Summit 2012、2013と2年連続で参加しました。「世間の当たり前」と「現場の当たり前」との差を痛感するイベントとなりました。

ソフトウェア開発の三種の神器

社内標準はもちろんExcel方眼紙!でしたが、社内向けの仕事で制約もなかったので、Redmine、Jenkins、Subversionあたりを自由に使ってました。Redmineなしで仕事という状態がほぼないため、Excelだけでどうプロジェクトを進めるのか、想像できません・・・チケット駆動開発の本にはお世話になりました。

Jenkinsでのデイリービルド、リリース環境を作りましたが、もうちょっとうまく運用できなかったかなあ、と、もどかしさは残っています。

Subversionも入社後に初めて知ったものですが、最初は「更新とコミットだけしてればなんとかなる」と、そう教えられて、そんなもんか、と思考が止まっていました。が、バージョン管理について調べていくごとに、みんな・・・何もバージョンを管理できていない・・・!と気付きました。Subversion使ってて「本番リリースが終わってからコミットする」のがバージョン管理ってどういうことなの?(マジ切れ

仕事ってきっと、みんなすごい人達が集まっていて、何でもきっちりやってるんだ!という学生の頃からの思い込みが解消された瞬間でもありました。みんな結構適当だったんだね・・・・

その後、分散型VCSに興味を持ってSCM Boot Camp in Hokkaidoに参加して・・・と繋がっていきました。ちなみに、SCM Boot CampではMercurialを使いましたが、職場で広める際には「Windows環境で、Subversionもいまいちよく分かってないけど使ってる」環境ということから、Subversionに近く、push/pullをしなくても利用できるBazaarを選択しました。

アジャイルに進めよう

自分の周りの世界だけでも変えよう、と取り組みを続けていましたが、「好きにやっていいよ」というプロジェクトがあったので、好きにやりました。私はスクラムマスターのポジションで、複数チームのリーダーにスクラムの考え方を説明して、Redmine、Jenkins、Bazaar用のサーバを用意して・・・2週間毎の振り返りをしつつ、改善しながら進められました。勉強会もやりつつでしたが、最初は「それって何か意味あるの?」と言っていた先輩が、少しずつ「確かに言うとおりだったわ・・・!」と段々と共感してくれたのは嬉しかったです。アジャイルがどうとか、というよりは「日々考えて、改善しながら進めよう!」って意識が大事なんじゃないかと思いました。

Vagrant、Chef、Capistrano

せっかくなのでサーバは仮想環境で構築・運用してみました。今では当たり前みたいに流行ってますが、1年半前はあまり情報がなくて大変でした。こいつはくる!と思った予測的中でしたね・・!Redmineプラグイン色々いじってみたり、Ruby関連さわることが多かったですね。

なんで辞めたの?

音楽性の違いってやつですかね・・・。

サーバ運用まわりは色々勉強できましたが、インフラ専門のエンジニアになるつもりはなく、自分でもコードは書きたいという気持ちはあります。が、職場の同僚を見ると、メインフレームアセンブラを解析してCOBOLを量産・・・ん?この職場に残っていて10年後に何が得られているだろう?と疑問に思ってしまったり。「お金になる仕事」としてはいいのかもしれませんが、私にはどうにも続けられるとは思えませんでした。


違和感、っていうのが一番しっくりくるのかなと思います。

大学生活最後の1年間で、デザイナーの後輩と2人で組んで色々と作ったものが色んな賞をもらって、モノ作り!楽しい!と思っていたあの気持ちに戻りたいのです。UI?デザイン?画面にボタン配置すりゃいいだろ?と意図もなくただ項目を並べたりだとか、(そもそもメインフレームの画面をVBで再現しました!とかよくわかんないんですけど)Excel方眼紙で頑張って段落合わせて、フォントとか印刷のずれ直して、あれ?なんだろうこれ・・・これがモノ作りってやつ?


現状で社員の7割ぐらいが管理職で何を管理してるのかなあ、とか、役職上がったところで求められてるのは、単価の安い外注さんをいっぱい使ってとりあえず動くもの作れ、ってことだよなあ、とか。とりあえず手の空いたやつはどっかのプロジェクトに突っ込んでおけ、とか別に教育的観点なにもないよなあ、とか。色々と思うところはありますが、お金を稼ぐためには致し方ないのでしょう。人月でお金を稼いでるんだから。

既に組織としてそれなりに年数が経っている会社全体を変えるっていう事はすごく難しくて、10年20年かけたら、もしかしたら可能なのかもしれません。が、自分の人生の大半を費やしてやりたいことなのか、というと答えはNOでした。ですが、少なくとも、自分の周りだけは変えられたと思ってます。種は蒔いたので、育てるのは残った人にまかせて、自分は新しいチャレンジをしたいと思いました。

会社に残っていても勉強できること、ってまだまだあると思います。学べることがゼロになるなんてことはありません。なので、どこかで自分で決めなければなりません。隣の芝生が青く見えているだけかもしれませんが、それでも私は自分が楽しい!と思えるものを作りたい。

これから

次の職場はありません。ということで、10年振りに実家に帰りました。あまり焦って仕事を探しているわけでもなく、のんびりと来年になったらどこか東京でWebサービスとかソーシャルゲームあたりやってる会社探そうかな・・!と思ってます。ふわっとしてますが、フィーリングは大事にしたい。とりあえず勉強がてら、自分でWebサービスでも1個作ってみようかなあ、と思ってます。Ruby関係さわることが多かったのでRailsを使って、インフラはAWSあたりで・・!自分で好きなように決めれるって素晴らしい。