closed vacancy Java Backend Developer - remote

Leaf Logistics
Posted 4 years ago
Stack Overflow
What does a Senior Backend Engineer do? As a Senior Backend Engineer, you will help create the infrastructure layer for B2B transportation. You will collaborate cross-functionally with Product, Data-Science, and other teams to deliver new products and solutions to meet both internal and customers’needs. You’ll be responsible to drive the implementation of new features end to end from refinement to release to production. As priorities and needs in a startup constantly change, you will use your experience and judgement to balance between rapid iterations and engineering well-architectured, adaptable, secure, and scalable services. As part of a growing team, you have the opportunity to shape not only the product we’re building, but also our ever-evolving engineering culture and processes.

As a Senior Backend Engineer, you...

  • Find simple yet flexible solutions for complex and ever-evolving business needs through collaboration with Product and other functional teams
  • Design and implement RESTful APIs that drive our frontends and connect to client/partner systems based on containerized microservices and serverless functions. We write most of our services in Kotlin/Java or Python
  • Have a “you built it, you run it”attitude with CI/CD as their second nature. We use AWS, Docker, Kubernetes, and Bitbucket pipelines to implement it
  • Drive engineering initiatives and technical improvements
  • Onboard and mentor other team members through code reviews, pair programming, and continuous feedback
  • Establish, document, and implement best practices and engineering standards
  • Take initiative to research new technologies, read articles and news in order to understand the current state of the backend community

Who makes a good Senior Backend Engineer?

  • At least 4 years of software development experience
  • Ability to work both self-directed and collaboratively to deliver results in the face of conflicting priorities and ever-changing requirements
  • Experience in managing and coaching team members
  • Strong experience in one of our primary languages: Python, Kotlin, Java
  • Deep knowledge of designing and developing scalable, distributed and microservices and/or serverless based applications with RESTful APIs
  • Expert in SQL and relational database design
  • Experience with containerisation and container orchestration (Docker and Kubernetes preferred) in a cloud environment (AWS preferred)
  • High attention to security-related topics, including infrastructure and application security
  • Knowledge of the transportation industry, especially full truckload transportation, and related systems such as TMS and standards such as EDI is useful
Who doesn't? What we’re trying to do is hard. Technically difficult some of the time, but also hard because we’re asking for big changes from people who are usually very comfortable doing things the way they’ve always been done. There is a lot of frustration, and it’s easy to put a lot of work into something that doesn’t bear fruit. But we’re here to put a big dent in a gigantic industry, something we’ll all be proud of a decade from now. We’re also a startup. Priorities change all the time, something’s always on fire, and there’s twice as much work to do as hands to do it. It’s uncomfortable, new challenges surface constantly, and that means it’s up to you to manage how you spend your time in the midst of conflicting priorities. We’re well-funded, with advisors and investors who’ve built legendary companies. But we’re also deploying that capital aggressively, so you should expect uncertainty and discomfort. If the above sounds daunting, you’re a perfectly sound and reasonable person who probably won’t fit in at Leaf. If this strikes you as an exhilarating milieu, well, let’s talk.