Back-End Software Engineer Summary
We’re in search of a Back-End Software Engineer that specializes in server-side components. In this role, you’ll primarily work in C++, Java, Scala and Ruby and will bring a depth of knowledge on basic algorithms and data structures. As a Back-End Software Engineer, on any given day you might be architecting new features for our customers, refactoring existing code to be more scalable, and seeing changes through to completion in a live environment.
Back-End Software Engineer Roles and Responsibilities
- Build robust and scalable software in C++, Ruby, Scala and/or Java.
- Design and create services and system architecture for your projects, and contribute and provide feedback to other team members.
- Help improve our code quality through writing unit tests, automation and performing code reviews.
- Collaborate with multidisciplinary team of Back-End Software Engineers, Project Managers and System Administrators.
- Participate in brainstorming sessions and contribute ideas to our technology, algorithms and products.
- Work with the product and design teams to understand end-user requirements, formulate use cases, and then translate that into a pragmatic and effective technical solution.
- Dive into difficult problems and successfully deliver results on schedule.
Back-End Software Engineer Skills/Requirements
- 2-7 years of recent hands-on coding and software design.
- Bachelor degree or more in Computer Science or a related field.
- A track record of projects completed on time – you are a flawless executor, not a procrastinator.
- You find satisfaction in a job well done and want to solve head-scratching challenges.
- Experience with all phases of the software development life cycle, best practices and Agile Software Development.
- Solid OOP and software design knowledge – you should know how to create software that’s extensible, reusable and meets desired architectural objectives.
- A strong familiarity of Web Server technologies including NGINX, Apache and J2EE.
- Experience with Java or Ruby, and the willingness to learn new technologies (experience with other object-oriented languages is okay too, but our code is Java, Ruby and Scala, so you should be able to get up-to-speed on at least one of them quickly.
- Establish Back-End Software Engineer best practices.
- Work autonomously, are excited by new technologies, and will never back down from the challenges of scale.