frontend programmer

フロントエンドディベロッパーの仕事とは?具体的にどんなものを作る?

Photo by Kelly Sikkema on Unsplash ウェブサイトやウェブアプリケーションをカッコよく、使いやすくするのがフロントエンドディベロッパーの仕事です。 私がプログラミングを始めた7年前は、企業のウェブサイトを作るのがフロントエンドディベロッパーの仕事だと思っていましたが、色々な会社で働く中でフロントエンドと言っても、色々なものを作るんだということに気が付きました。例えば、 オンラインショップ携帯電話会社の申し込み専用のサイトオンラインゲームを配置するためのサイト金融関係会社でお金の出入りを把握するためのウェブアプリケーション などなど、 最近はウェブサイトというより、ウェブアプリケーションを作ることが多いです。今までエクセルで把握していたものをもっと使いやすいものにしてウェブ上で把握する、とか情報をただ載せるだけではなく、今は会社とお客さんが双方向にやり取りするためのツールに変わってきていると感じます。 カッコよく、使いやすくするためには、それを可能にするデザインとUX(User Experience-使い手のことを考えてより使いやすくする技術)が必要です。それは大抵の場合、UXデザイナーから受け取って、私たちディベロッパーがコードを書きます。 私はディベロッパーになる前にDTPオペレーターをしていましたが、フロントエンドディベロッパーと少し似ているかな、と思います。DTPオペレーターの場合、デザイナーが作ったアイデアを紙媒体で形にしますがフロントエンドディベロッパーはデザインを、ウェブ上に再現します。 コードを書けないといけないので使われているプログラミング言語を知っていないといけないのはもちろん、デザインやレイアウトのズレを感じる感覚とそのアプリケーションをより使いやすいものにするためにどうしたらいいか考えることが必要です。 世界中のかっこいいサイトを見て、どういう風に作られているか見てみたりするといい勉強になります。アワードサイトは今かっこいいと言われているサイトが見られます。(日本語サイトもあります。)https://www.awwwards.com/ フロントエンドディベロッパーになるために必要なプログラミング言語はHTML、CSS、そしてJavascriptです。 Javascriptと言えば、どのJavascriptのフレームワークを使ってるのかも重要です。フレームワークとはウェブの大まかな枠組みを作る手助けをしてくれるものです。 フレームワークを使うと 複雑なものが、Javascriptを使うよりも短時間でできるコードを管理しやすく、他の人が見てもわかりやすいアプリケーションがデータを読み上げる時間を短くできたり、パフォーマンスが良い。…
work from home

完全リモートワークになった フロントエンドディベロッパーの1日

Photo by Nelly Antoniadou on Unsplash 現在はコロナのため、100%リモートで自宅からオンラインで働いています。会社によってはもう一年半くらい完全リモートという会社もあるようです。 私の最近の1日を簡単に紹介したいと思います。朝5:30から6:00に起床。6:30に会社のPCにVPNでログインして今日一日何をするかざっくり考える。7:00頃から朝食8:30から仕事再開9:00から9:20にオンラインで朝のスタンドアップミーティング(朝礼みたいなもの)私のチームはディベロッパー4人、UX(デザイナー)2人、プロダクトオーナー、テスターの8人です。一人ひとりが順番に1分以内で昨日やったこと、今日やることを話して、何か他の人と議論する必要があれば、このミーティングの後、残ってもらって話をする。私の場合、フロントエンドなのでUXの人の意見が必要な時があって例えば今朝は、もらったデザインが他のページのデザインと合わないけどこのままいくのか、聞きました。ミーティングが終わったら、それぞれがやる仕事をします。仕事はタスク管理ツールを使って管理していて、自分がやりたいタスクをTo Do から In Progress に移動させてから開始します。何か分からないこと、聞きたいことがあったら、基本チャットツールで質問し合います。会社によって違いますが、スラック、スカイプ、ロケットチャット、Microsoft Teamsなどなど。チャットだと話しにくい内容、複雑なことの場合はスカイプや電話で話します。チーム外の人に質問があったりする場合は基本メールを使います。日によって30分や一時間、ミーティングが入ります。自分にとって重要だと思えば参加、私の場合、バックエンドの内容で、参加しても意味がわからなさそうな場合は参加せず、後で簡単に説明してもらったりします。一週間に一回か二回、休憩用ミーティングがあって、仕事と関係ない話をしてみんなで休憩する、という時間があります。好きな時間にお昼ご飯をとって、天気の良い日は家の周りを10分くらい散歩。家に戻ってきて、さっきの仕事の続きをして夕方5時頃に仕事終了です。リモートになってだいぶ楽になりました。私の住んでいるところが郊外なのでいつも出勤に片道1時間以上かかっていました。朝は4時半に起き、バスと電車を乗り継いで会社に行っていました。インターネットの接続が良ければ電車の中でも仕事ができます。基本、部下を信頼する上司に恵まれてきたので、管理されることもなく、8時間仕事をしていればいつ始めてもいいし、朝早くに仕事しても、夜遅くまで仕事してもいい。なんと言っても自由度が高いのがこの仕事の魅力です。 ただし完全リモートならでは、の欠点もあるかな、と最近思います。リモート前は同僚とちょっとした雑談をする機会がありました。朝の挨拶の時、ミーティングの会議室まで行く時、お昼ご飯を一緒に食べる時。週末何したの?とかあの仕事はどうなった?とかあれがちょっとわからないんだけど?とか。会議や朝の短い時間に少しだけ交わす会話の中から会社やチームの働き方、同僚の人となりを知れたんです。それからオンラインで議論する時、Aさんが意見を言って、Bさんが反論する。CさんがAさんの意見に賛成、というと、会話がそれで終了、というようななんだか煮え切らない状態で終わってしまうことが多いなあと思うんです。私のチームはオンライン会議で顔を見せたがらない人が多いせいもあるかと思いますが。あと、オンラインの会議は会話がかぶると本当に聴きづらくなるので会話が一方通行になりがちです。 煮えきらなかったと思った時には会議の後、個別でチャットでメッセージを送るとか、オンライン会議でも2分か3分早めにログインして、早めに来た人とちょっと世間話するとか、私の対策は今のところそんな感じです。