Jr Software Engineer

San Francisco
Engineering
Full-time

Symphony Commerce is an emerging leader that provides fully managed Commerce and Fulfillment as a Service to brands throughout the world. Our platform allows teams to focus on what they do best - create and market amazing products - without requiring them to master the complexities of running supply chain.

As a Software Engineer at Symphony, you’ll be part of our merchandising, order management and payments, or fulfillment team (we’ve got a lot of opportunity!) You’ll be responsible for working with other smart engineers to design and implement part of our platform, including helping us migrate toward an event-driven service oriented architecture.

To apply for this role there is a coding challenge to complete, the details are below. Please take 60-90 minutes on the challenge and submit your best work.

HOW YOU CAN HAVE AN IMPACT

    • Build the platform that drives our site front, order management, and fulfillment orchestration platforms
    • Work closely with senior engineers and help design our next generation service architecture

WHAT WE’RE LOOKING FOR

    • At least 18 months experience developing large, enterprise-scale applications (the language is up to you, but Java is a plus)
    • Strong interest to learn how to build large scale, multi-tenant enterprise services
    • Experience with relational databases (MySQL, PostgreSQL, etc.)
    • Good communication skills, particularly when it comes to mentoring other aspiring engineers

ENGINEERING PRINCIPLES

    • Place trust in your coworkers, support ideas with data, and adjust your approach as needed.
    • Ask for advice, don’t assume you have all the answers, seek to learn something new every week.
    • Learn to see the world through your customer’s eyes. Ensure your work has had the right impact, and be a constant advocate for fixing bugs and making improvements, however small.
    • Speak up when you see a risk, are getting behind, or need help and encourage others to do the same.

BENEFITS

    • Full medical, dental, and vision insurance
    • Retirement (401k)
    • Free catered meals and office snacks
    • Central location in SoMa
    • Great people
    • Dogs (bring your own or borrow one of ours)

Code Challenge

    • Coding Challenge - This should only take 60 minutes to complete, please do not spend more than 90 minutes. Can use whatever tools needed to complete

    • public class ShortURL {
      public String set(String url) {
      // TODO: generate short URL, store data, return short URL
      }
      public String get(String shortURL) {
      // TODO: return original URL
      }
      }

      Basic task
      • Implement get and set
      • Assume a single threaded environment
      • Storing the short url - url mapping in memory is fine
      • Always generate the shortest possible URL which is available.

      Hints:
      • use a map for URL storage
      • no need to cover all possible chars, A-Za-z0-9 is fine
      • ignore maximum length of an URL / browser compatibility
      • brute force is good enough

      Example:

We pride ourselves on a culture where we can move quickly, as do most startups. What differentiates us is that we what we do isn’t defined purely with software - there is a tangible intersection with the real world, and what we do here has a major impact on the success of other established and emerging brands.