かわばんが

エンジニアの雑記

ウェブアプリケーションエンジニア java/spring/awsとか

SIerからWeb系企業に転職して1年経ったので振り返る

SIer企業から転職してWeb系企業に入社して1年が経ったのでやったこととか振り返りとして書く。

 

入社前

地方国公立大学情報系学科から新卒でSIer企業入社。

テストとかドキュメント作りとか少し開発とかWeb企業では役に立たないことをやってました。

自分のやっていることが無意味に思えたので転職を決意。SIerではよくあることかもしれないけど、ドキュメント作りとかばっかりでスキルも身につかなかった。

その後、半年ふらふらして、転職活動を始める。大した実績もなかったが意外と順調に転職活動が進み、現在のWeb系事業会社に入社。

いまだになぜ入社できたのかわからないけどラッキーだったなと思う。

 

 

仕事内容

宿泊予約システム系のWebアプリケーションの新規開発

リリース後は機能開発や運用業務など

 

開発言語:Java

フレームワーク:Spring

DB:Mysql

 

メンバー

5名(サーバーサイド)

 

サーバーサイドとフロントエンドのスーパマンがいたのでとても勉強になりました。迷惑かけましたが僕も一生懸命食らいついていたら色々教えてくれました。本当に感謝。

その他デザインとマークアップする人が数名。

 

約半年でメンバーちょっと変わりましたが、最後までだいたい変わらない感じで開発進んでいきました。

 

 業務内容

実際にやってきたことを時系列に書きます。

 

アプリケーションについて説明受ける。

今思えばWebアプリケーションの基本的な構成だったと思うけどあんまりよくわからなかった。(わかってる風に聞いてた)

 

テーブル設計 

その名の通りテーブルを設計。カラムの数が10未満の小さいテーブルです。

その他テーブル作ったりした。

 

エンティティ作成

テーブルの数だけエンティティ作成。

エクセルでマクロ組んでもらってたくさん作成しました。他力。。

補えなかった何かを書いた気がする。

 

lombokを使ってGetterとSetterはアノテーションでやればよかったがこの時は知らない。

 

Restful APIの作成

エンドポイント指定してJSONを返すやつ。

MVCで開発したのが初めてであり、Controller~Serviceみたいなのも初めてだったのでわからないことだらけだった。キャメルケースとかJSONも知らなかった。

 

本当になにもわからなすぎて基本的なCRUD機能を実装に2週間くらいかかってた。

 

なので学んだことを全部エクセルにメモして、図式化した。

すると少しずつ身につく。これはやってよかったなと思う。

今も見返すことがあるので。

 

このころ、特に苦労していたのがStream。

ListをMapに変換てどうやるんや…っていうのに本当に苦労した。意味がわからなかった。今では少しずつ慣れてきた。

本当にへぼい。

 
WordPressAPIについて調べる

少し色が変わって、WordPressから記事を取得する必要があったので調査。

初めRSSを利用して取得しようと思っていたが、WP REST APIというものを使うこととした。

取得先のWPの構成がちょっと変だったため、取得するのにすごい苦労した。

APIの公式ドキュメントがあんまりなくて腹立った記憶がある。

結構頑張ったと思う。

 

APIの作成

APIの作成という表現であっているのだろうか。

Rsesful APIの作成と違うのは、結果をModelに詰めてURLを返すこととRestControllerではなく普通のContorollerを作成した部分。

こちらもCRUD機能を実装。

 

リリース作業

Jenkinsでビルドしてリリース。

この時AWSもちょっと触る。オートスケーリングとかスナップショットとか。

 

外部サービスとのAPI連携

APIの作成の時と基本的には同じ。リクエスト来たら仕様通りにデータを返すやつ。

仕様の調整というか確認に苦労した。

完成形がイメージできなかったというか、これでいいのかなっていう不安が大きかった。

 

ElasicSearchの調整

キーワード検索機能で日本語がおかしい感じで認識されていたので、調整。

北海道で調べると、「北」、「海」、「道」、「北海道」で検索されちゃうみたいな。

analyzerにkuromojiとかいう日本語形態素解析エンジンの設定を追加。

これでとりあえず北海道で検索されるようになった。

検索精度もっと改善の余地がありそうなので、今後は辞書登録とかできたらしたいなと思っている。

 

AWSの設定いじる

コストがかかりすぎてるとか言われたので、無駄な設定とかお金かかってるところを見直しました。

そもそもなにに金がかかっていて、課金される対象なのかわかっていなかったのでざっと調べて簡単なことから対処した。

使ってないインスタンス消したり止めたり。

無駄な設定消したり。

詳しくはまた書こうと思う。

まだ検証できてないですが、多分20%くらいは削減できたと思う。

 

最後に

 入社した頃と比べて色々できるようになった。

嬉しい。

まだまだ課題があるので一つずつ潰していきたい。