ベルリンのITスタートアップで働くジャバ・ザ・ハットリの日記

日本→シンガポール→ベルリンへと流れ着いたソフトウェアエンジニアのブログ

Web系エンジニア必須の環境設定 <その1>dotfilesをGitHubで管理

シンガポールからヨーロッパに来てもソフトウェアエンジニアとしての職種が同じで言語も英語なので「やってることほぼ同じだな」と感じることがほとんど。そして開発の環境設定もほぼ同じ。人種国籍問わずエンジニアなら「これはやってるだろー」というような設定をまとめた。と、言うのもたまーになぜかやってない人が居たりして「こういう方法があるよ」と教えてあげると喜んでいただけるからだ。

誰もがやってること = とても需要があってかつその設定が支持されている
のだと思う。

あくまで必須項目に絞ったので、エディタはVimかEmacsかとかの宗教に踏み込むつもりはない。永遠に結論の出ることが無い話ではなく「それぐらいのことやってるだろーフツー」という内容だけ。なので熟練のエンジニアの方は当然過ぎる話で面白くもなんともないと思われる。主に学生さんとか若い方向けとしてください。

全てのdotfilesをGitHubで管理する

.vimrc,.bash_profileなどファイル名の先頭にドットが付いた管理ファイルを全てまとめてGitHubで管理すること。こうしておけばMacBookが変わっても、転職を機に会社のコンピュータを返却しても、国境を超えて引っ越ししても、いつでもどこでもGitHubからクローンするだけでいつもの親しんだ環境がすぐに実現できる。
コンピュータが変わるたびにゴリゴリ設定を書く必要が無くなる。

動作環境:MacOS

自分のディレクトリにdotfilesという名のフォルダを作る。

$ cd
$ mkdir dotfiles

現行のファイルをdotfiles配下に移す。(私は好みで先頭にドットを付けると隠れファイルになるのがイヤでドットを付けないファイル名としている。ここはお好み次第)

$ mv .vimrc dotfiles/vimrc
$ mv .bash_profile dotfiles/bash_profile
$ mv .agignore dotfiles/agignore
$ mv .tmux.conf dotfiles/tmux.conf
 管理したいファイル分を繰り返す


シンボリックリンクを作成する。以下の内容のシェルスクリプトを作成し、dotfiles_links.shという名で保存する。

ln -sf ~/dotfiles/vimrc ~/.vimrc
ln -sf ~/dotfiles/bash_profile ~/.bash_profile
ln -sf ~/dotfiles/agignore ~/.agignore
ln -sf ~/dotfiles/tmux.conf ~/.tmux.conf

実行権を与えて、実行する。

$ chmod +x dotfiles_link.sh
$ ./dotfiles_link.sh


GitHubにログインして左上の+ボタンを押す。新しいリポジトリを作る。リポジトリ名はdotfilesとしておく。

$ git init
$ git add .
$ git commit -m "first commit"
$ git remote add origin git@github.com:<Your Account Name>/dotfiles.git
$ git push -u origin master

他のコンピュータにこの設定を持ってくる時

$ cd
$ git clone https://github.com/<Your Account Name>/dotfiles.git
$ cd dotfiles
$ chmod +x dotfiles_link.sh
$ ./dotfiles_link.sh

これだけ。
このちょっとしたことで貴重な時間をしょうもない設定作業に費やすことが一切無くなる。

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

朝っぱらから路上でゲイがディープキスしているのがベルリン

今朝、出勤するためにベルリンの美しい街を歩いているとヒゲを生やした中年小太りのゲイが二人でキスをしていた。軽い挨拶程度のキスではない。お互いの腕を絡ませて、抱きついて、ブッチュー、、、、、、とかなりディープだった。朝の9時半の路上で。

で、これこそがベルリンだなーと。

f:id:tango_ruby:20170201055810p:plain:w400
(ベルリン地下鉄の広告)

娘を通して仲良くなったドイツ人夫婦のご自宅におじゃました際にそこの奥さんが興味深いことを言っていた。「ベルリンにはすべての人に居場所があるのよ。人種や年齢、性的趣向にかかわらず全ての人にね」
この言っている意味はなんとなく分かる。とにかくベルリンには様々な人が居る。ただ居るだけではなく、ベルリンの街がいろんな人の多様性を許容しているのが街に居るだけで伝わってくる。

理由は第二次世界大戦中においてドイツの不幸な歴史があって、戦後にその反省を踏まえていたこと。東西に分断されていたベルリンがひとつになってドッと人が流れ込んできたこと。最近では不景気になりつつある他のヨーロッパの都市の中で、外からの人を飲み込み続けて好景気を維持しているベルリン。

シンガポールで暮らしていた時にもその人種の多様性には目をひいた。しかしシンガポールの多様性とは政府の管理の元にできあがった多様性だった。つまりシンガポール政府がターゲットにした金持ち外国人と日雇労働者をきっちり管理して集めました、という国家だ。

ベルリンの人の集まり方にそういう秩序は無い。「変なヤツもいっぱい居るけど、まーいいか」な感じがありありとする。

そういう雑多な集まり方でプロダクトを作るITチームを編成すれば、そりゃーおもしろいモノができあがるわ、と思っていて今のスタートアップのチームメンバーからもそういうワクワク感を感じている。

なんかとってもベルリンが好きになってきた。

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com


海外転職でクソなスタートアップにひっかからないようにする方法

ホントにいいスタートアップには優秀な人材と刺激的なプロジェクトがあり、そこで働く人には無数の成長機会が存在する。ならばスタートアップで働くに限るぜ!となりがちだが気をつけなければならないことがある。それは箸にも棒にもかからないようなクソみたいなスタートアップが存在して、そんなクソスタートアップに入ってしまうとロクなことがない、ということ。

そんなクソなスタートアップを避ける方法はカンタン。クソスタートアップには共通項があるからだ。以下のクソスタートアップ共通項3点にあなたの応募先企業がひとつでも当てはまったらご注意されたし。

<クソスタートアップ共通項>

1)給料がやたら低い

給料がやたら低いところはたとえオファーをもらっても避けた方がいい。「そんなもん俺は**ドル以下のオファーなんて受けないぜ!」とお考えのエンジニアであってもこの点は注意が必要。

日本で培った技術をそのままアピールしてもなかなか海外転職となるとうまくいかないことが多い。そこは海外向けにやり方を変換していただく必要がある。コツさえつかめば問題無いが、そのコツが掴めない間は不採用通知を受けまくってしまう。私も日本から初めて海外に出ようとした時にちょっと苦労した。で、そうして不採用通知をたくさんもらった後にふっとオファーをもらったりすると、嬉しくて舞い上がってしまう。ところがオファー内容をよく吟味すると「給料がやたら低いぞ」と。そこで「あんなにがんばっていろいろ応募してやっと手に入れたオファーだから蹴ってしまうのはもったいない」なんて考えがよぎるが、そこでオファーを受けてはいけない。
この状況を冷静にしっかり説明するとこうなる。

低い給料で人材を買い叩いてくるクソなスタートアップは実際にある。そんな会社でも場所がロンドンやシンガポールにあり、その都市にブランドがあればすごい低い給料でも海外からよく分かってない人が入ってきてしまう。

なんど転職活動を行ってもオファーがもらえてなかったのは転職活動にズレがあったからであって、決してそのエンジニアが持っている技術に需要が無い訳ではない。技術にはそれ相応の値段がついている。あなたの技術を正しい方法でアピールすれば法外に低い値段がつくことはない。

以上の点からクソなオファーは蹴って適正な価格で技術を買ってくれる会社を探しましょう。きっとあるはず。

2)いつまでたっても成長してない

スタートアップの醍醐味はその急激な成長性にある。この間まで従業員10人だったのがいつのまにか50人、そのうち100人だよ、という感じだ。成長性が無くいつまでたっても10人で、もうかれこれ10年目になります、ってなるとそれはスタートアップじゃなくて単なる中小企業。もちろん少数精鋭ですごいスタートアップも存在する。でもそういうところは普通に人材募集したりしてないし、会社もエンジニアもお互いをよく知ってる状態で「あんたの技術すごいから入ってくれ」と入社してくる。
なので海外から探して入る会社にはあまり当てはまらない。

スタートアップとの転職面談ではその成長性を把握しておいた方がいい。ストレートに「おたくは成長してまっか?」と聞いてもOkだ。イケイケのところは胸をはって「おお!急拡大してるぜ!」と言ってくるはずだ。

ただそういう風にはっきり言ってこない場合は聞き方を変えて探った方がいい。私がいつもやってる聞き方はこう。
応募者「この会社に入社したのはいつごろですか?」
面接官「2年前かな」
応募者「あなたが入社したときに開発チームには何人ぐらい人がいましたか?社内全体では何人でしたか?」
面接官「私が入った時の開発チームは4人体制で社内には10人しかいなかったな」
応募者「今は何人ですか?」

という感じだ。「この1年で何人から何人になりましたか?」と直球質問よりもこの方が会話にリズムがあるし、なにより探ってる感が薄いのでだいたいこの聞き方をしていた。
 

3)会社のウェブサイトがしょぼい

ITスタートアップであってもたまにしょぼいウェブサイトのところがある。アプリや製品に注力してるから自社のウェブサイトは放ったらかしになりがちなんだよ、なんて言い訳は意味がない。

立派なウェブサイトを持っている会社 ≠ 立派な会社
であることは自明だ。ウェブサイトなんていくらでも立派にできるし、特にITスタートアップならそれが本職だ。
しかし
ショボいウェブサイトの会社 = ショボい会社
この公式は常に成り立つ。散々いろんなスタートアップを見てきたがウェブサイトがショボいのにイケてる会社なんて見たことがない。

ただウェブサイトがショボいからといって応募書類を出さない方がいい、とは言ってない。ぜひ応募書類を出して面談をするべきだと思う。ただし使い方としては海外転職の面談の練習台にするだけ。面談で何を言ってもオファーもらっても行く訳が無いんだから、サンドバック代わりとしては最高だ。

以上、海外転職でクソなスタートアップにひっかからないようにする方法でした。

エンジニアの方が海外転職をお考えならば『エンジニアとして世界の最前線で働く選択肢(著:竜盛博 )』がおすすめ。転職前に読むべし。
tango-ruby.hatenablog.com




tango-ruby.hatenablog.com

tango-ruby.hatenablog.com

tango-ruby.hatenablog.com