🎓

A New Graduate's Journey at BoostDraft

に公開

日本語サマリ

BoostDraftのUIチームでは、新機能のUI開発や既存機能の改善を担当しており、デザインチームとの密な連携を通じて、設計と実装のすり合わせを行いながら開発を進めています。

この記事では、アメリカの大学を卒業後2023年10月に新卒入社したエンジニアが、実際に携わった以下の機能開発を通じて得た学びについて紹介しています:
・用語や参照箇所をクリックすると関連情報を表示する「ポップアップ機能」
・ユーザーからのフィードバックにファイル添付を可能にした「お問い合わせフォーム」
・多様なエラー検出と修正を支援する「校正機能」

また、BoostDraftのエンジニアリング文化として、「責任感」「相互レビュー」「自走力」といったバリューを日々の開発でどのように体現しているかについても紹介しています。

中途入社がメインのBoostDraftで、新卒エンジニアがどのように活躍し成長しているのかぜひご覧ください。

Introduction

Hi, I'm Yu-Wei, a Software Engineer on the UI team here at BoostDraft. I joined the company in October 2023, shortly after graduating from UC San Diego. I've had the opportunity to work on interesting projects and collaborate with amazing colleagues, and I'm really enjoying the work culture we've created at BoostDraft. I'm excited to share some of my experiences and insights from my time here.

About UI Team

The UI team is primarily responsible for developing UI and functionality for new features, as well as maintaining and updating existing features for our company's product development. We usually work closely with the design team and engage in regular communication with them to ensure everything aligns with the requirements.The design team presents their latest designs, and we give feedback on the development costs to keep things realistic and make sure the development process goes smoothly. This back-and-forth creates a positive inter-team relationship and promotes effective communication, facilitating a smooth transition into the engineering development stage.

Features

Here are some core features that I have handled since joining the company, and things I learned throughout their development. Every development task has its unique experience.

The popup feature—one of our product's most interesting features, which automatically presents relevant information and functionality when a user clicks on a term or section reference—was my initial project upon joining the company. This feature may seem simple, but it actually involves many details. Throughout the development process, we had many discussions with designers about arranging critical information and prioritizing functionalities to solve user pain points. Additionally, this project provided me with my first experience working with WPF, learning the MVVM design style, and managing WPF windows. Therefore, I not only learned technical skills but also many design concepts; it was an enjoyable learning experience and the perfect starting point.

Contact form

As a start-up software company, we pay a lot of attention to user feedback. Hence, as we were improving our product to provide better communication channels for customers, we were asked to add support for attaching files when customers submit feedback. This task involved not only simple UI updates but also some backend server updates. So, we also needed to update our cloud server script to parse and store files. I was surprised that I had the chance to work on things beyond our team’s responsibility and get hands-on experience with server-side tasks.

Proofreading

Proofreading is one of our most powerful features, allowing users to check all different kinds of information and fix errors in one place. It is a big project, and my first time collaborating with other team members. Proofreading involves multiple design perspectives, like how to display the error, how to let the user fix the error, and how to preview the fixing options. So, the work needs to maintain good architectural design, user experience, and usability. During development, I was responsible for creating the functionality for users to fix their errors in the document. However, different types of errors require different ways of fixing, and we often needed to discuss with each other to find the best solution. Therefore, besides technical skills, communication plays an important role in avoiding misunderstandings and redundant work. Direct communication is key; even with the smallest issue, we don’t hesitate to ask questions to ensure transparency.

Reflections

In this section, I'd like to share some core values that have shaped my experience and contributed to a truly unique work environment and culture. These values not only define who we are as a team but also guide our interactions, our decision-making, and our overall approach to work:

Sense of responsibility

At BoostDraft, taking responsibility is important. Each team member has ownership of their work, and we're always looking for ways to make the product even better. When you feel like the product is yours, it creates a sense of accomplishment to see it grow and improve. It's not just about completing tasks — it's more about making a real difference. The best part is that we all have the freedom to come up with our own ideas and try new things. Everyone is encouraged to take ownership, push boundaries, and strive for excellence.

Everyone is a reviewer

At BoostDraft, reviewing someone’s work is not solely your supervisor’s responsibility—everyone can review others’ work and provide feedback and suggestions. This allows developers to freely share their ideas and thoughts across the team. Regardless of your background, great ideas are always welcome, and no question is dumb. This encourages members to speak out and challenge each other to make our product better. Through discussion, we can learn from each other and improve ourselves.

Self-driven

Self-driven is another core value that we emphasize at BoostDraft. Being self-driven means taking initiative, staying proactive, and moving forward without waiting for direction. Our tasks don't always need to be assigned by a supervisor; we can initiate the work we think is important or want to do. So, our developers have a certain degree of freedom to decide their direction. A self-driven mindset encourages us to set high standards for ourselves, embrace challenges, and continuously seek growth.

Personal anecdote with our core values

With these core values in mind, it's interesting to see team members coming up with ideas during feature development to make the product even better, such as more convenient functions for users, edge cases, and UI element layouts. So, sometimes our features become quite different from the initial design throughout development iterations because we occasionally reach out to the designer to exchange ideas and thoughts. This can lengthen the development process, but we want to ensure the user gets the best possible product.

Summary

BoostDraft is a dynamic environment for learning, growth, and hands-on problem-solving. I enjoy the friendly atmosphere where continuous improvement is valued, as well as the core values we share and the ease of communication within the company. Through my experience at BoostDraft, I've learned and grown so much here, both personally and professionally, and I am excited to continue contributing.

BoostDraft is currently expanding our hiring for software engineers.
If you're someone who wants to grow technically while working remotely, or you're eager to take on a variety of challenges early in your career, we'd love to talk with you.
Apply here: https://apply.workable.com/boostdraft/j/D885170155/

BoostDraft TECH BLOG

Discussion