Lessons From My Internship Journey at DNC Tech

Jackie Cohen
DNC Tech Team
Published in
4 min readSep 21, 2023

by Victoria Cheng (posted by DNC staff)

Headshot of a young woman with long dark hair and glasses gently smiling at the camera. The background has out-of-focus nature scene
Image of Victoria Cheng (post author), provided by the author

Victoria Cheng is a student at Georgetown University. During the summer of 2023, she was a software engineering intern on the DNC Tech Team, working on the Data Portal web application team.

During my first week with the DNC, I attended a “Fun Friday Demo Hour” with the Tech Team. This time is set aside for each product team to showcase their latest work. As engineers discussed their findings, I took it all in — the enthusiasm of the group, the elaborate maps and unfamiliar acronyms — and felt a rush of excitement for the weeks ahead. I was eager to learn, and the warm environment gave me a good feeling about what was to come.

Interning with the Tech Team has been an incredible opportunity. Now that my internship is coming to a close, I wanted to take some time to reflect on what I’ve learned these past few months.

This summer, I have been building a prototype of a personalized landing page for Data Portal, a DNC web application that serves the Democratic data community. Data Portal, or Portal for short, helps users complete jobs, run data programs, and automate workflows. Portal’s tools support data experts across the Democratic ecosystem as well as internal DNC staff. Beyond its active users, Portal also directly impacts election efforts and voter mobilization. Field organizers, fundraising teams, and campaign leadership all benefit from data that moves through Portal tooling.

Because so many different types of users work in Portal, it is important for the platform to have one central destination that could be tailored to the needs of each individual. This demand gave rise to my landing page prototype project, which will allow users to view their recent activity, access documentation, and easily navigate the Data Portal. The landing page will offer support for all different kinds of app users and provide an individualized Portal experience. By helping data experts get the most out of Portal’s tools, my project will streamline operations that are improving voter outreach and increasing civic engagement.

To generate ideas for landing page features, the Portal Team completed a Crazy 8’s design exercise, a method that pushes you to lean into your creativity and embrace ideation. The Engineering, Product, Design, and Community team members all brought different, valuable perspectives to the table. It was remarkable to experience this cross-team collaboration first-hand. Brainstorming with the group also opened my eyes to the range of decisions behind a product. Among these decisions were concerns about which functions would aid the user and align with product goals, the design of the site itself, and the feasibility of development.

After receiving mock-ups of the landing page from the team’s product designer, I began coding, one ticket at a time. I had the opportunity to engage in full stack development: implementing the frontend, which involves the user interface and design of the app, as well as the backend, which handles functionality and allows users to interact with dynamic information. With HTML, CSS, JavaScript, and the Bootstrap library, I honed my web development skills for responsive design. Meanwhile, learning the Django framework used for Portal’s backend code presented the greatest challenge. For elements of the landing page, I programmed dynamic content that would apply to different types of users. Features would display on a user’s personal landing page only if they were relevant to the user’s work. For instance, a user who manages voter data would see activity and tasks on the landing page related to their job, while a user who is newly onboarded would have access to training resources and documentation. Although implementing these dynamic features was a challenge, I gained valuable experience from working in Portal’s complex code base.

By developing across the technology stack, I’ve learned how to improve my code, study the work of experienced programmers, and engage in industry practices like unit testing, version control, and scrum. I have also enjoyed collaborating with team members across different roles, who have introduced me to the product development process and broadened my perspective. I will carry these insights with me going forward.

As I’m rounding out my project and preparing for it to be carried on in the future, I’m excited that the landing page will facilitate the essential work of data experts in moving, manipulating, and analyzing data — all in service of getting Democrats elected. It has been incredible to contribute to infrastructure that is being used throughout the Democratic ecosystem. I’m so grateful to have worked with the Data Portal group on the Engineering team, and I can’t wait to watch as DNC Tech continues to make progress.

--

--

Jackie Cohen
DNC Tech Team

Software, teaching, simple tech that gets things done, New York City, etc.