Senior/Lead Full Stack Engineer

Job description

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.


Are you a Senior/Lead Software Engineer who is passionate about designing and building highly performant, robust systems to create outstanding user experiences and help impact the professional lives of millions of independent professionals and clients around the world? Do you relish solving important problems? Do you enjoy identifying potential scalability issues, implementing solutions that follow engineering standard methodologies, and coming up with creative solutions to both technical and product challenges? If so, we’d love to hear from you!

This is a contract position with the potential for contract renewal based on project needs and accomplishment toward deliverables.

Work/Project Scope:

  • Collaborate with project stakeholders to understand requirements and deliver high-quality solutions;
  • Design, develop, test, and maintain scalable and robust server-side logic, databases, and APIs according to project requirements;
  • Utilize programming languages such as TypeScript or JavaScript for frontend development;
  • Develop, test, and maintain high-quality front-end code for web applications;
  • Utilize modern frameworks like Vue.js, Nuxt, React.js, or Angular for efficient development;
  • Optimize front-end performance and ensure cross-browser compatibility;
  • Integrate front-end interfaces with backend APIs for seamless data flow;
  • Contribute to the enhancement of our codebase by improving quality and documentation and reducing technical debt;
  • Stay updated on current and emerging technologies;
  • Utilize collaborative tools such as Gmail, Slack, Confluence, Jira, and various others for efficient communication, documentation, and project management;
  • Participate in code reviews and design reviews;
  • Document code and technical specifications for future reference;
  • Analyze system performance, respond to incidents within specified deadlines, and provide services during on-call rotations to address system issues;
  • Provide services in the Scrum process, including sprint planning, daily stand-ups, and retrospective meetings, to contribute to project progress and team coordination;
  • Participate in project-critical meetings and provide regular status updates on deliverables;
  • Manage your time independently and effectively to achieve project deliverables, which may require an estimated 40 hours of project-related effort per week;
  • Time zone PST +/-3 (or willing to work in a way that overlaps with 9 am-3 pm PST).

Must-Haves (Required Skills):

  • 8+ years of professional software development experience;
  • Deep knowledge of modern JavaScript (ES6+)/TypeScript, and Python;
  • Extensive experience with a modern JS framework, such as Vue (preferred), React, or Angular;
  • Experience working with AI Agents to any degree (or extensive experience with LLMs);
  • Experience with unit testing and end-to-end UI testing;
  • Basic understanding of accessibility (WCAG) guidelines and engineering principles;
  • Self-motivation, self-organization, and self-education skills;
  • English on at least an intermediate level (should be able to pass the technical interview in English);
  • Basic knowledge of PHP, server-side JavaScript or TypeScript, or other server-side languages.
  • Basic knowledge of Node.js backend framework;
  • Basic understanding of system design principles;
  • Extensive knowledge of REST;
  • Experience in writing well-structured, easily maintainable unit tests (such as JUnit, Mockito, etc);
  • Experience with relational databases;
  • Consistent track record of collaborating with large, distributed teams of engineers over documentation and code;
  • A desire to learn new technologies and continually develop your professional skills;
  • Comfortable working with AWS;
  • Experience building/supporting high-load web applications and solving scalability issues.

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.

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

Share this job:
Please let Upwork know you found this job on Remote First Jobs 🙏

Similar Remote Jobs

Benefits of using Remote First Jobs

Discover Hidden Jobs

Unique jobs you won't find on other job boards.

Advanced Filters

Filter by category, benefits, seniority, and more.

Priority Job Alerts

Get timely alerts for new job openings every day.

Manage Your Job Hunt

Save jobs you like and keep a simple list of your applications.

Search remote, work from home, 100% online jobs

We help you connect with top remote-first companies.

Search jobs

Hiring remote talent? Post a job

Frequently Asked Questions

What makes Remote First Jobs different from other job boards?

Unlike other job boards that only show jobs from companies that pay to post, we actively scan over 20,000 companies to find remote positions. This means you get access to thousands more jobs, including ones from companies that don't typically post on traditional job boards. Our platform is dedicated to fully remote positions, focusing on companies that have adopted remote work as their standard practice.

How often are new jobs added?

New jobs are constantly being added as our system checks company websites every day. We process thousands of jobs daily to ensure you have access to the most up-to-date remote job listings. Our algorithms scan over 20,000 different sources daily, adding jobs to the board the moment they appear.

Can I trust the job listings on Remote First Jobs?

Yes! We verify all job listings and companies to ensure they're legitimate. Our system automatically filters out spam, junk, and fake jobs to ensure you only see real remote opportunities.

Can I suggest companies to be added to your search?

Yes! We're always looking to expand our listings and appreciate suggestions from our community. If you know of companies offering remote positions that should be included in our search, please let us know. We actively work to increase our coverage of remote job opportunities.

How do I apply for jobs?

When you find a job you're interested in, simply click the 'Apply Now' button on the job listing. This will take you directly to the company's application page. We kindly ask you to mention that you found the position through Remote First Jobs when applying, as it helps us grow and improve our service 🙏

Apply