IC3 - Software Engineer Backend
About this role
Objective of the Role
Develop medium-complexity software components using the backend environment, including tools and microservices-based applications. Design and implement efficient and scalable solutions, ensuring code integrity and quality. Collaborate with other team members to achieve project objectives. Solutions may require occasional supervision.
Main Responsibilities
• Design, develop, and optimize advanced software solutions.
• Document code and comply with current regulations and procedures to ensure maintainability and scalability.
• Develop and maintain robust APIs for integration with other systems.
• Define and optimize technical processes related to the development lifecycle.
• Implement and manage solutions using container technologies, ensuring application efficiency and scalability.
• Work with Architecture, Data Management and DevOps teams through agile sprints to promote continuous development releases.
• Gather and document functional and non-functional requirements in JIRA stories for projects and technical improvements.
• Collaborate closely with other technical and business teams to understand and translate requirements into technical solutions.
• Define clear acceptance criteria before development to ensure quality and alignment with business goals.
• Write, automate, execute, and document test cases (Test Case Coverage).
• Perform integration tests to verify joint functionality and ensure seamless operation.
• Test product usability and accessibility to enhance user experience.
• Maintain updated documentation on architectures, procedures, and operational tools to support ongoing development and maintenance.
• Develop tools and scripts to automate operational tasks and deployment processes.
• Follow data architecture guidelines on how to collect and store information securely and efficiently.
• Generate and deliver design documentation and information availability to the data team.
• Collaborate and mentor team members.
• Provide development estimates.
• Facilitate knowledge transfer between operations and development teams.
• Implement version control systems to manage source code and infrastructure.
• Collaborate on effective branching and merging strategies.
• Promote an autonomous work culture by encouraging self-management, accountability, and proactive problem-solving among team members.
• Serve as a Spin Culture Ambassador to foster and maintain a positive, inclusive, and dynamic work environment that aligns with the company's values and culture.
Required Knowledge and Experience
• Minimum 3 to 4 years of experience as a Software Engineer.
• Knowledge of SQL and NoSQL (MongoDB, PostgreSQL, MySQL).
• Use of tools like Maven, Gradle, Github Actions, Sonar Cloud.
• Understanding of design patterns, architecture, and SOLID principles.
• Skills in TDD, ATDD, BDD.
• Secure development skills (use of SAST, DAST tools).
• Practice in Scrum and Jira management.
• Creation of microservices and consumption of REST services, RESTful APIs.
• Development on containers.
• Use of Git and conflict resolution, as well as CI/CD tools.
• Ability to adapt to rapid changes in the work environment and project priorities.
• Excellent communication and collaboration skills.
• Willingness to acquire knowledge in new technologies within Spin's tech stack.
• Strong problem-solving skills and attention to detail.
Java:
• At least 2 years of professional experience in Java development in a team environment.
• Experience with Java, Spring Boot, Hibernate.
• Experience with JUnit and Mockito.
En Spin estamos comprometidos con construir un lugar de trabajo diverso e inclusivo.
Creemos en la igualdad de oportunidades y promovemos un entorno libre de discriminación por motivos de raza, origen nacional, género, identidad de género, orientación sexual, discapacidad, edad o cualquier otra condición legalmente protegida.