Jessica Kuo > Blog > Current Entry
7 Lessons in 30 Days at GitHub
Jessica Kuo
September 2, 2023
5 mins to read
My Role
As a design system intern at GitHub, I had an exciting opportunity to combine my engineering background and passion for designing beautiful, intuitive user experiences.
While my previous focus had been on product design, this summer presented a unique opportunity for me to explore design systems on GitHub's Primer design system team.
My Team
Primer is GitHub’s open source design system that has the important role of providing reusable patterns and components to streamline the creation of responsive and accessible designs, enabling feature and platform teams to focus on problems unique to their domain.
As a design systems intern, my responsibilities included designing components, maintaining documentation, exploring frameworks, performing accessibility reviews, realigning primitives, and collaborating with engineers.
1) Setting Goals and Intentions
At GitHub, the environment fostered by my manager and team has empowered me to use my strengths and advocate for myself, leading to a more intentional approach in identifying ways to add value to the team. Notably, my manager for the internship shared something about her north-star during our interview process that has really stuck with me:
Unlike other internships I've had, I’ve learned from GitHub and my manager the value of openly sharing my goals, strengths, and personal growth aspirations. I've learned to take personal initiative to ensure project scopes and feedback are aligned to helping me best contribute.
2) Design Documentation
As a global remote company, GitHub functions on an asynchronous communication style— using the GitHub platform to document processes, decisions, and collaborations. Through my first month at GitHub, I’ve taken time to reassess my documentation process, find workflows that work for me, and learned to pause and plan how I want to communicate questions, concerns, or updates.
From repo project boards, to GitHub pull request templates, to FigJam workflow whiteboards and mindmaps, this intentional process taught by GitHub’s asynchronous remote culture helps me revisit my decisions and keep scheduled meetings efficient.
3) Designer Developer Flow
One of the remarkable aspects of GitHub being an open-source platform and developer collaboration platform is its accessibility and ease of contribution. GitHub’s unique culture encourages designers to contribute, collaborate, and connect directly through codebases.
Working closely with the developers on the Design Infrastructure team has expanded my perspective in considering the technical implementation of my designs, the structure of APIs, accessibility concerns, and the handoff process in greater detail. I have learned how to make pull requests, suggest bug fixes, explore the underlying code, and experiment with engineering design solutions.
4) Systems Thinking
Systems thinking has shaped my birds-eye approach and future-outlook. Developing components, it is not enough to focus solely on immediate use cases. By setting up props, APIs, and structures that are future-proof and system-first, we ensure the scalability of components. Accessibility is also a paramount consideration in design thinking, as GitHub places a strong emphasis on inclusivity, and designs are heavily guided by accessibility principles.
I’ve witnessed how every design decision in design systems contributes to the overall user experience and visual identity. This experience has been a great way to exercise collaboration and empathy for understanding how to create systems-first designs that can be versatile, effective, brand, and align with the needs of various teams.
5) Understanding the Story
With the numerous initiatives that the Primer team works on, I’ve had the freedom to explore my project and resources. Through the onboarding process and during my mid-internship design review, I grasped the importance of having a story in mind, considering user journeys, component life cycles, and company objectives. These experiences reinforced the value of embracing the narrative behind design decisions, which are essential as I grow in my career and communicate to leaders or peers about designs.
As an intern, remember the importance of discovering and defining when approaching problems! While the shiniest tasks and deliverables are extremely exciting to work with, finding that balance will help create great foundations.
6) Prototyping the Path
Interns are commonly paired with projects or initiatives that had already undergone discovery or exploration by other members of the team. In these situations, it can be tempting to simply accept the design decisions and directions that have been previously established. However, after listening to Ethan Eismann’s talk at Config, I learned the value of pushing beyond those boundaries.
One of the key practices I adopted during the prototyping phase was stress-testing and exploring edge cases for my designs. Instead of settling for the first iteration, I was encouraged by my team to critique and question my own work. Remember, you have the unique opportunity to contribute fresh ideas and perspectives, so take the time to explore these edge cases and bring your findings to the team!
7) Learning for Growth
The design culture at GitHub is incredible and has taught me the significance of seeking out opportunities for learning, even beyond my college years. During my first month at GitHub, I participated in two design conferences with the Design Team: GitHub's internal design conference, LGTM, and Figma's 2023 Config Conference. Unlike internships where performance or company objectives may take precedence, my experience at GitHub has been continuous support for learning opportunities and personal growth.
Taking time to meet with others in the Design Team has motivated me to further cultivate my own design philosophy and growth. Truly, I have been amazed by the personal projects, artwork, involvement in design communities, and passion of the designers at GitHub. Above all, this internship has enlightened me about the significance of being part of a vibrant design community and has ignited a deeper passion for design.
Closing Thoughts
My internship wouldn’t have been complete without so many amazing people. Paired with my manager, Natalya, and two amazing mentors, Katie and Cole, this internship helped me discover my interest in systems design and taught me valuable career lessons.
Thank you GitHub for this great summer experience ✨.