Job Title: Software Developer
Location: Barbican - London, UK
Reports to: Director of Engineering, UK
Closing Date: 21sr June 2019
Our company mission is to simplify global cloud communications and to find a niche by serving both the enterprise and mobile operator sides of the value chain. In order to do this we have developed shared in-house state-of-the-art technology and products which allows us to quickly and efficiently build bridges between different players in the market.
Our mission is to keep adapting to the changing markets, communications use cases and grow our product portfolio, from Messaging, to Voice and now on to Message Personalization. Our core value however remains to deliver the highest quality products through deep Tier 1 integrations with mobile operators around the world. Simply put, our mission is: Connecting People and Things to a World of Infinite Possibilities.
The Sinch SMS platform processes in excess of 1 Billion API events per month and hasn’t broken a sweat which demonstrates that we can scale with our customers’ needs no matter how big they are. Our core delivery engine is rated at more than 10,000 transactions per second per node.
- You will be a valued and important member of successful Kanban team, equally responsible for the quality of the software that's produced.
- You will be actively supporting the team to translate the User Stories into code.
- You will be accountable for ensuring that your tasks are owned and visible throughout the development lifecycle where your high-quality deliverables are integrated with the other artifacts in the team.
- You are expected to educate the team on new technologies, automated testing and documentation and feel proud about the team achievements.
About your responsibilities
- Work in an agile, cross functional team taking responsibility for the team deliverables and quality.
- Heavily contribute to the code base (This is a 100% hands-on code design and coding role)
- Work closely with other software engineering teams and business stakeholders to develop our internal and external web applications
- Promote good software engineering practices (e.g. test-driven development, performance in design, self-healing solutions)
- Maintain and improve development methodologies and best practice.
- Maintain an ongoing awareness of emerging developments and trends in related technology arenas that could impact current projects and influence new projects.
Required Skills and experience
- Experience of Java development tools (JDK) and technologies.
- Must have in-depth knowledge on core JAVA including new feature like LAMDA, Concurrencies, String manipulations, Collections, Network etc.
- Experience of developing highly performant, multi-threaded algorithms and memory profiling will be an additive advantage.
- Experience in software engineering technologies such as Java, Spring, grpc, MySQL
- Experience in enterprise applications/tools like Redie, Messaging Queue, AWS services
- Strong development exposure – full knowledge and experience of development life cycle
- Must be driven and focused on problem identification and resolution
- Experience of using code management tools - ideally GitLab, SVN
- Experience of using TDD and/or automation tools JUnit, DBUnit and other automated test frameworks
- You must be a highly creative, enthusiastic, conscientious, a detail-oriented self-starter
- Have an excellent understanding of continuous integration/delivery and test automation
- Have proven experience of working with Agile concepts and methodologies
- Have proven experience of working in teams in the successful delivery of complex, highly performing and high-quality software systems.
- Be proactive and self-sufficient individual capable of taking ownership of entire environments and any issues with them
- Strong verbal and written communication skills
- Attention to detail is essential
- Ability to ‘take the initiative’ and to strive to improve
- Ability to plan and manage commitments