Contract: Senior Software Engineer - Unified Developer Environment (UDE)

Upwork ($UPWK) is the world’s work marketplace. We serve everyone from one-person startups to over 30% of the Fortune 100 with a powerful, trust-driven platform that enables companies and talent to work together in new ways that unlock their potential.  

Last year, more than $3.8 billion of work was done through Upwork by skilled professionals who are gaining more control by finding work they are passionate about and innovating their careers. 

This is an engagement through Upwork’s Hybrid Workforce Solutions (HWS) Team. Our Hybrid Workforce Solutions Team is a global group of professionals that support Upwork’s business. Our HWS team members are located all over the world.

The UDE product enables local and remote development by combining solutions based on dev containers and Okteto for each mode. It builds on a bubbletea/golang TUI-based solution and extensive development to adapt the respective technologies for Upwork use cases. The UDE team is responsible for all aspects of the product, including development, support, and documentation.

Responsibilities:
  • You will be implementing features primarily in local runtime and dev containers and evolving the product for more use cases.
  • You will collaborate with the developer community to evolve the product architecture and enable adoption at scale.
  • You will participate in supporting the product, responding to requests for troubleshooting and questions on usage.
  • The ideal candidate combines enterprise-grade development experience with knowledge of deploying K8s workloads in an AWS EKS environment. While K8s operations are not in scope, developing and supporting remote development functionality necessitates this knowledge.
  • Additionally, close collaboration with a diverse developer community is key; experience in a development experience/toolset role is highly desirable.
Must Haves (Required Skills):
  • High-level experience (minimum of 5 years) of software development in Java-based microservices in an enterprise environment and under SDLC processes.
  • High-level experience in Python to support key utilities used in the deployment process.
  • Experience in UI development.
  • Experience with Docker containerization, including writing Dockerfiles, managing container lifecycles, and integrating with development workflows.
  • Experience with deploying workloads on K8s environments, in particular the development of K8s manifests and working with Helm.
Nice-to-have Skills:
  • Experience with Golang.
  • Remote development and sandbox solutions in general, and Okteto in particular.
  • Cross-platform Golang and Bash scripting.
  • Dev containers.
  • CI/CD pipelines.

Upwork is proudly committed to fostering a diverse and inclusive workforce. We never discriminate based on race, religion, color, national origin, gender (including pregnancy, childbirth, or related medical condition), sexual orientation, gender identity, gender expression, age, status as a protected veteran, status as an individual with a disability, or other applicable legally protected characteristics. 

 Additionally, a criminal background check may be run on a candidate after a conditional offer to perform your services for Upwork is made. Qualified applicants with arrest or conviction records will be considered in accordance with applicable law, including the California Fair Chance Act and local Fair Chance ordinances.

To learn more about how Upwork processes and protects your personal information as part of the application process, please review our Global Job Applicant Privacy Notice

Back to blog

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...