Software Engineer, Backend

  • Full-time

Company Description

SmartRecruiters is a values-driven, global-minded, and well-funded tech employer on a mission to connect people to jobs at scale. As a global leader in enterprise recruitment software, SmartRecruiters offers a cloud-based global Hiring Success platform that allows teams to attract, select, and hire the best talent. 4,000 companies worldwide rely on SmartRecruiters to achieve hiring success—including brands like Bosch, LinkedIn, Skechers, and Visa—using recruitment marketing, CRM, AI, ATS, and a marketplace of 600+ connected vendors all within one scalable platform.

SmartRecruiters was recognized by Forbes as one of the Best Employers in 2020. We are proud to offer a collaborative, diverse, and remote-friendly work environment, as well as competitive salaries and generous equity. We believe in promotion from within, so high performance can lead to upward mobility. Needless to say, we make sure you’re taken care of. Our inclusive office environment welcomes and respects all.

Job Description

Our engineering team solves one of the most important problems of the modern economy - connecting great people with great jobs. We believe this problem can only be solved with technology, and we developed a software platform that has supported over 100M job seekers to date (with 5M joining every month). We are looking for a backend engineer to help us build the next chapter of that vision. 

We designed our R&D structure based on the empowered product teams model. It means our teams are responsible for business outcomes and have autonomy in solving problems in the way that “customers love yet work for the business” (yes, we are heavily influenced by this and this).

Our technology platform is a SaaS product hosted on AWS (and soon also GCP). Our system is composed of hundreds of independent services (each sitting on Docker, orchestrated by Kubernetes).

We build most of our services in Java, Javascript (Node.js), and Python. We have a strong CI/CD culture, and we currently run 40 production deployments per engineer per month.

What you’ll deliver: 

  • Contribute to a full life-cycle of the product (including problem discovery, prototyping, design, implementation, and measuring adoption)
  • Build services with Java / Node.js (Express, Nest.js) on top of Kubernetes/AWS/GCP infrastructure
  • Build developer-friendly RESTful APIs
  • Design and connect to our persistence layer (PostgreSQL, ElasticSearch)
  • Collaborate with other experience and platform teams

Qualifications

  • Experience in developing and operating distributed web-based systems
  • Experience in supporting end-to-end product lifecycle (from product discovery, solutioning, system design, implementation, production rollout, and optimization)
  • While not strictly required we see most of our Software Engineers have 3+ years of professional experience.
  • Strong command of Java programming language 
  • Hands-on experience with TDD, clean code principles, and effective code reviews.
  • Good understanding of persistence layer design
  • Good understanding of RESTful API design
  • Basic understanding of distributed systems design (design for failure, eventual consistency, asynchronous communication, circuit breaking, timeouts, etc.)
  • Strong collaboration and communication skills
  • Strong command of English language, both written and verbal 
  • Experience in CI/CD would be a plus (running multiple deployments per day)
  • Familiarity with AWS/GCP, Kubernetes, and Docker would be a plus

Additional Information

SmartRecruiters is proud to be an Equal Employment Opportunity and Affirmative Action employer. We do not discriminate based upon race, religion, color, national origin, gender (including pregnancy, childbirth, or related medical conditions), 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.

Privacy Policy