Backend Software Engineer
WelocalizeJob Summary
Welocalize is seeking a Backend Software Engineer to develop information systems, collaborate with cross-functional teams, and deliver high-quality solutions. The ideal candidate will have experience in back-end development using Go and Node.js, as well as familiarity with AWS ecosystem, relational databases, and agile SDLC. They should be able to design, implement, and manage database schemes, optimize queries, and ensure data integrity and security. With a strong focus on quality and scalability, the engineer will work in a distributed team and participate in code review sessions. Welocalize is committed to equal opportunities and encourages candidates with disabilities to apply. The company offers flexible remote work options and a growing network of linguistic resources.
Main Responsibilities
- Implement new features and improve existing ones within one of our software development squads.
- Work in a distributed team with a strong focus on quality and scalability.
- Conduct and participate in code review sessions, ensuring that the team adheres to best coding practices and maintains high-quality standards.
- Design, implement, and manage database schemes.
- Document progress and propose solutions or suggestions for improvement.
- Optimize queries, manage indexes, and ensure data integrity and security.
- Collaborate with product management to design and evolve use cases.
- Collaborate with QA Engineering to guarantee the quality of the deliverables.
Key Requirements and Competenies
- Minimum of 2-3 years of experience in back-end developing using Go.
- Minimum of 2-3 years of experience developing back-end solutions with Node.js is a plus.
- A minimum of 1-2 years in Front-End development/design with VueJS or React would be ideal.
- Used to work with AWS ecosystem (Lambdas, Secrets, API Gateway, etc.).
- Relational databases like PostgreSQL or MySQL.Used to work in remote and distributed environments using tools like Jira, Confluence, and GitHub.
- Demonstrable professional experience implementing complex features in large software systems, following the software development life-cycle.
- Experience shipping code in an agile SDLC.Able to apply continuous integration, development, and automated testing concepts.
- Knowledge of paradigms, languages, and trends in the relevant domain.Familiarity with design patterns.Familiarity with asynchronous programming, queuing, caching, logging, security, and persistence.
- Awareness of algorithms, big O complexity, and the CAP theorem.
- Able to add value to team discussions, prevent views persuasively with rational justifications, and solve disagreements constructively.
Educational Level
- Post-secondary Degree in Computer Science or equivalent combination of working professional experience.