Sr. Software Engineer (Scala) - Platform Engineering
At BigCommerce, you will have the opportunity to design and implement scalable, highly interactive applications that power billions of dollars in online commerce every year.
We’re hiring a Sr. Software Engineer that has a deep appreciation for, and ability to create, simple solutions to complex problems and a desire to make meaningful impacts on our customers.
Our team strives to build amazing products leveraging cutting edge technology. Learn more about our team: http://www.bigeng.io/team-on-a-mission/
The Platform Engineering team’s mission is to evolve the systems that power our core platform’s capabilities. The work you do will enable your teammates to build faster, more reliable solutions for customers.
Some examples of projects we are taking on:
- Swap out the jet engine while the plane is flying. Port functionality of our existing monolithic application into Scala services.
- Rearchitect our storefront system to make it dramatically faster than it was before.
- Development of next generation high-performance APIs that are easily consumed by third party integrations.
- Invent new ways for our systems to communicate with one another by implementing cutting edge technology like service meshes and gRPC.
What You Will Do:
- Collaborate with cross functional team members to deeply understand a problem and brainstorm how to break it into smaller problems that can be iterated on.
- Design clear solutions to problems, focusing on both system architecture and lower level code design.
- Implement solutions in addition to building up any tooling and infrastructure needed to support the solution.
- Evaluate the effectiveness of the initial solution to a problem and iterate when needed.
- Ensure an appropriate level of automated testing is built alongside your solution as well as instrumentation to evaluate how the solution is operating in production
- Review peers’ solutions and code and provide feedback to improve as a team overall
Who You Are:
- You have at least 1 year of deep experience working in a Scala environment. This should be recent experience that includes not only developing Scala apps, but also experience operating them in a high throughput production environment.
- Have basic familiarity with PHP and be willing to help refactor and separate PHP implementations into new Scala environment.
- You know how to build reliable and safe distributed systems and understand the tradeoffs made when engineering a feature.
- You’re excited to explain the inner workings of projects you’re working on.
- You want to prove to the world that high quality code can be delivered with speed.
- You enjoy explaining complex technical topics in a way that others can understand.
- You enjoy making yourself and your team better engineers.
- You are results-oriented and like to use data to showcase progress.
- When things break, you’re the first to jump in and help fix them.
- You possess strong computer science fundamentals: data structures, algorithms, programming languages, distributed systems, and information retrieval.
- B.S., M.S. in Computer Science or equivalent experience.