U.S. Digital Corps
Making Impact at Scale: Software Engineering in the Federal Government
Launched in August 2021, the U.S. Digital Corps is the newest technology fellowship in the federal government. The Digital Corps has a specific focus on recruiting, hiring, and supporting early-career technologists across various skill tracks—software engineering, data science and analytics, product management, design, and cybersecurity.
The four of us—Anastasia Gradova, Isabel Laurenceau, Meenu Bhooshanan, and Samira Sadat—joined the Digital Corps as part of the inaugural June 2022 cohort and are all new to working in the federal government. When we were considering applying and before we started, one of our biggest questions was, “what does a day in the life of a software engineer look like?” In this blog, we hope to answer this question and also share about our personal motivations in applying to the Digital Corps.
What was your path to the U.S. Digital Corps? Why did you consider applying?
I grew up playing on basketball teams, eventually ending up at the national level. The feeling of being on a team and helping make the whole group better than any individual really inspired me. I even ended up getting a M.S. in social work because I thought I was going to go into helping others after my career in sports was over. When I moved to the United States in my 20s, I didn’t exactly know what I wanted to do, but I knew I enjoyed making things better for those around me.
After spending a number of years working various hospitality jobs, I wanted to switch to something with a greater ability to effect change, so I ended up studying computer science since everyone told me, “tech is the way to go.” During my senior year, I ended up applying and interviewing at many big tech companies, who all pitched candidates on the same things: money, projects, and company growth. I knew I wanted to do something with my new tech knowledge, but selling advertisements just didn’t resonate.
I happened to see a general jobs email from our career services coordinator and buried in it was information about the U.S. Digital Corps. After reading about the mission of the Digital Corps and speaking with others who had previously worked with the government, I thought it would give me the greatest ability to make an impact at scale—far beyond anything a large tech company could offer as a junior software engineer.
Coming out of school, I knew I wanted to use my technical skills to help others in my career but I wasn’t sure how. The U.S. Digital Corps provided the answer to my how. I had previously been exploring work with non-profits and the public sector when I heard that the U.S. Digital Corps was recruiting for its inaugural cohort. When I looked further into the program, I saw the emphasis it placed on high-impact work for fellows and I immediately knew it was something I wanted to apply for.
The Digital Corps also stood out to me because even though it is a two-year fellowship, it is truly a path into career civil service—something that is not easy to come by for technical roles without having years of prior experience. I appreciated that career development would be included in the program to help prepare fellows for long careers in the federal government. I was also interested in the program because it hires across five tracks, which means that I would not only work on my software development skills but that I could learn from fellows in other tracks.
Growing up, I had no clue what I wanted to pursue. I had a wide range of interests and did not see myself in mainstream career paths. When I was 16, I gained the opportunity to study abroad in Jordan through a program in the U.S. Department of State’s Bureau of Educational and Cultural Affairs, the National Security Language Initiative for Youth scholarship. Seeing the State Department’s Foreign Service Officers representing our country showed me that a career in public service was viable.
I was set on studying international affairs when I started college. On a whim, I decided to take the introduction to computer science course. Though it was challenging, I saw how technology impacts every industry. I wanted to grow my technical skills to help better the world around me.
I struggled to find opportunities that would blend my two interests in public service and technology. My senior year of college, I saw the U.S. Digital Corps while I was in the thick of the job hunt and felt that it was the perfect opportunity to use my technical skills to provide better digital services to the public.
When I was in college, I was never exposed to opportunities for engineers to serve in public service. I started my career in a very traditional tech job at a private company during the height of the pandemic, working on embedded systems and testing software for large machinery. Though I learned many valuable software engineering skills in my first professional experiences, I began to feel like something was missing.
One side of me is very analytical and loves to create and problem solve, while the other side is very passionate about social issues. I thought to myself, “How could I apply my software engineering skills to help solve the issues I’m passionate about? Did these sides of me have to remain separate?”
One day while researching, I came across the term “civic technology.” It completely opened my eyes to the need for human-focused technologists in public service. I signed up for tons of newsletters, read every article I could find, and listened to podcasts.
Eventually I learned of a new program in the federal government for entry-level technologists to serve their country. I was intrigued by the U.S. Digital Corps mission to give people a chance to apply their technology skills towards creating an effective and equitable government. The rest is history!
Can you tell us a bit about the project you are currently working on? What is the impact you hope to have for the public?
I am a software developer working on USA.gov. We are working on reimagining what the “federal front door” to the government looks like on the web. I work on a team of front-end, back-end, and DevOps engineers. We are also part of a greater team with content writers, user experience researchers and designers, data scientists, and product managers. As a whole, we are working to make this site driven by user-research and accessible for the public we serve.
USA.gov serves a place where the public can go to find information and resources they can trust. We live in a diverse country where people have many different questions and needs. Our goal is to make it easier for all those people to find answers to their questions and resources for their needs.
Meenu and Anastasia:
The two of us work for the 10x program within the General Services Administration’s (GSA) Technology Transformation Services (TTS). 10x is a government innovation lab that crowdsources ideas from federal employees, choosing a few to fund as real technology projects through a unique phased funding model. This model ensures only ideas with the most potential for high impact on the public and those that can be used across multiple agencies receive more funding.
Anastasia is working on a team to explore and research if the government can support the creation of a service to allow agencies within the government to share information securely while maintaining privacy. This methodology is also known as Privacy-Preserving Record Linkage (PPRL). Such a project could have the potential to fundamentally change the way agencies share data—but the team is just starting to explore what that journey looks like.
Meenu recently joined the Privacy-protected Engagement with Online Government Services project, which sheds light on how government websites may unwittingly embed ad tracking software and seeks to solve this issue. Since it is an early phase, she has conducted research and interviewed experts to assess the project’s feasibility and whether 10x should commit to further funding. This project would enable the government to provide commercial-free digital services for the public.
In March 2021, President Joe Biden signed an Executive Order on Promoting Access to Voting, which tasked GSA and Vote.gov with modernizing and upgrading the websiteʼs user experience in order to promote access to voting, with an emphasis on underserved communities. A few examples of these modernization efforts include a multilingual content expansion and developing features to increase accessibility on the site.
As a software engineer on the team, I am working on researching and implementing a new content management system to handle our content expansion. I am also working on adding new language configurations and content to the site. Of course, there is always maintenance of our site to handle as well.
I believe in a democracy where every voice is heard. My hope is that Vote.gov will be able to reach every eligible voter, and provide easy-to-understand information about voting, making the voter registration process accessible to all.
What does a typical day look like for you on your team? What languages, tools, practices do you use?
Editor’s note: U.S. Digital Corps fellows are able to work entirely remotely from across the United States, or hybrid (part-time remote) or in-person with their agency teams, many of which are based in Washington, D.C. Remote fellows have the flexibility to decide their “core hours” in partnership with their teams.
On a typical day, I usually wake up around 7 a.m., as I don’t want to lag too far behind my east coast teammates. I will usually spend the morning reviewing the tasks for the day that need to be completed from the previous day before jumping on a morning sync meeting with Meenu and John Remensperger, another Digital Corps fellow, to discuss how our projects are going and anything we need to tackle together. From there it really depends on the day of the week, but I usually have between two and four meetings on a given day to meet with the team internally, Digital Corps meetings, or customer or partner meetings.
I usually spend between two and five hours a day working on project-focused items like research, reading documentation, watching tutorials, reviewing academic papers, and writing and testing code. I usually work in Golang and Python, but I’ve been spending a lot of time recently working in Postgres/SQL.
One of the other things that appealed to me about Digital Corps was the option to work remotely or hybrid. I chose to relocate and work a hybrid schedule, meaning I go into the office two to three times a week. Even though the team I work with on a day-to-day basis isn’t in the office, other people in TTS and GSA in general are. I consider myself an extrovert and really appreciate just being surrounded by other people. Meenu and I are often in the office together and it’s great to be able to have someone to have lunch with or grab coffee and talk about what’s going on. Other local fellows also sometimes come in and we will go get lunch together or hang out after hours and that has really helped me feel like I am part of a community in a new city.
I also work an alternate work schedule which means I extend my work days by an hour 8 days out of a pay period and get one day off. Most of my team is on this schedule and because of that it doesn’t feel like I am missing a lot of meetings either. I love having the freedom of that day to get errands done at places that are only open business hours or just reset for next two weeks.
I recently moved and come into a GSA office frequently. The huge monitors are great for deep work, and it’s great to catch up with Digital Corps fellows as well as TTS and GSA folks. The fellows in my local area usually grab lunch together each week and swap stories about project work, city explorations, and food adventures.
I like to start my day with two hours of focus time: writing, planning, and executing tickets on our team’s GitHub repository. Next, I have a daily sync with the two other Digital Corps fellows working at 10x: Anastasia and John Remensperger, who is working as a product manager. We share updates on our projects, any communication and demos needed for our stakeholders, and ways we can support one another with our work. With the rest of the team, we do an asynchronous stand-up since the team works remotely in time zones across the country.
Then, depending on the day of the week, I’m able to do some more heads-down work. For my most recent project, I was working on streamlining a Windows installation process. Our software was written in GoLang, and I worked on automating the install using Powershell scripts and building it using Inno Setup and a Continuous Integration/Continuous Deployment (CI/CD) pipeline. I used a service wrapper to run our executable in the background. When I first joined the project, I worked on rewriting a data model to handle hundreds of inputs, standing up our Postgres database locally for development using a container, and writing SQL functions for the front-end to filter data for visualizations.
Our team regularly co-works synchronously over video calls to ensure everyone is on the same page, ask questions, and clear blockers.
I start my day early since most of my colleagues are on the east coast. With a cup of coffee in hand, I start looking over my tasks, emails, and schedule for the day. We are a remote-first team and rely on video conferencing and Slack to communicate.
Our team follows an agile scrum process so we can respond to changes quickly and collaborate closely. Though this process is commonly used within private sector software teams, I’ve had to learn best practices for implementing it within a mixed federal-contractor team.
Most of my time is spent working on features for Vote.gov or new content deployment. In terms of technologies I use everyday, the website is a static site built on Hugo, Node.js to set up local environments, and Gulp.js to run tests. Vote.gov is hosted and deployed through cloud.gov Pages (government cloud hosting), and all our code is publicly available on GitHub..
I also participate in team discussions and technical research related to future features we can add to improve the Vote.gov experience for people.
What kinds of challenges (if any) have you faced so far—technical, bureaucratic, or otherwise? How did you overcome them?
Having never worked with the government before, the sheer amount of rules, regulations, and code were the first challenge for me. Everything in the government has an acronym and every agency has their own versions of similar acronyms. It took me several weeks to get used to this new language, but I found that you get familiar pretty quickly. Also, I’d say the only real technical challenge I’ve faced so far is wrapping my head around the scale of the projects we’re working on and how to design systems that can be used by thousands, if not potentially millions of people.
Two challenges have really stuck out to me. The first was and is just learning. It’s a new code base for me and overall there has been a lot to learn. Luckily, my team is really knowledgeable and have been very open to explaining, teaching, and helping me along the way.
The second challenge has been getting out of the “build fast” mentality and getting into a “build sustainably” mentality. Recently, I worked on a task that I knew I could solve in an hour using a certain technology. However we stay away from using that as much as possible for accessibility and other reasons. I’m getting into the mindset of evaluating what choices I make—not just from a developer perspective but also from sustainability, customer, and accessibility perspectives, keeping our users' needs at the forefront of my decisions.
My biggest challenge has been the amount of technology any project can touch, a lot of which I have not had prior experience in. Getting a sense of the overall system enables me to pick out workstreams and bite-sized work to take on. Additionally, I made a “study guide” doc of the different technologies my projects use and compiled resources for each category while I was onboarding. Now, since I have moved on to different workstreams, I am able to quickly reference that document to get a quick primer of any situation.
Of course, asking my teammates lots of questions has been the quickest way to get up to speed!
Coming from the private sector, I was (and still am) unfamiliar with the many processes in government that affect the delivery of public services—especially around digital products. I am also new to web development. In terms of voting, I’ve learned there are many players involved in elections and voting.
What would you tell software engineers who were contemplating applying to the Digital Corps?
Joining the Digital Corps and working at an agency isn’t just engineering, it’s using your complete self to help move the government forward. What I mean is that while engineering skills are important, so is using your unique experience and perspective to materially contribute to your agency’s mission beyond the code you write and the systems you design. The opportunities you have here and the connections you make are second to none.
Go for it! Besides the amazing work you’ll get to do and the skills you’ll get to develop, U.S Digital Corps also just gives you the opportunity to meet some amazing people. If you are looking to use your technical skills to help the public, this is a fantastic opportunity to do so.
I believe this opportunity is best suited for folks who feel they are not “just” software engineers: you have passions, interests, and experience beyond strict engineering work. This is my favorite aspect of the job: as a 10x software engineer, I’m able to simultaneously work on a project where I am standing up a CI/CD pipeline or a database while also researching and writing reports on the feasibility of another project in domain spaces I care about, such as user privacy.
What problems are you passionate about? Who do you want to help? By joining the U.S. Digital Corps, you’ll be able to make a more tangible difference in people’s lives without having to give up your engineering career. You also won’t be alone in doing so. You’ll be joining a cohort of talented and passionate folks across government and across disciplines.
One thing I love about this work is that I get to be exposed to areas of interest besides software engineering, such as user experience, design, product management, and cybersecurity. I know this will make me a more well-rounded engineer and give me skills to tackle a wide range of problems.
In terms of the application process, the U.S. Digital Corps has one of the most respectful, transparent, and well-thought-out processes I have ever been through as an applicant. Though applying for a government job can be a longer process than applying to a private sector company, I stuck with it because I could tell that the folks building the program truly believed in its values and vision.
Having a career as a technologist in government is a rewarding experience! If you’re interested in joining us, check out the U.S. Digital Corps for early-career opportunities. Applications are open until November 30, 2022.
For more mid- and senior-level technologists, join GSA’s Technology Transformation Services.