See all the jobs at Teamswell here:
| ARDA | Full-time | Fully remote
SOFTWARE DEVELOPMENT (BACK-END ENGINEER)
Teamswell is a high-growth nearshore outsourcing company working for US companies. Our mission is to help small and medium-sized US businesses grow and become more profitable by having access to highly engaged, skilled, and experienced talent at a fair price, and to generate career opportunities for bilingual professionals in Latin America with fair compensation and professional and personal growth opportunities.
We are currently looking for a Software Development (back-end engineering) professional who will be responsible for the development of complete functional modules and closely collaborate with the company's principal engineer and CTO. We promote a culture of respect among them, rooted in each member’s contribution to the team and the company. This respect means that you will enjoy broad autonomy in your work, while having access to very experienced technical leaders. Respect among them also means that all work, regardless of the author, goes through rigorous peer reviews, testing, and adherence to technical standards.
In Teamswell every team member has an instrumental role and impact on the success of our business and our client’s success, so we seek to have highly motivated individuals who thrive in a fast-paced work environment, who are intelligent, eager to work hard, reliable, and able to communicate effectively with all levels of an organization. Our Software Development (back-end engineering) will possess the skills and experience required, as well as a positive attitude and ability to solve complex problems and work in a fast-paced and rapidly changing environment. We value people who are good communicators, quick learners, scrappy about finding creative solutions to problems, and conscious of their work quality. We expect all our team members to deliver excellence in both technical expertise as well as in their everyday relationships with their team.
CORE RESPONSIBILITIES
· Design and Development
· Define, Build and maintain REST and gRPC APIs for internal and external use. These APIs directly reflect the capabilities and functionality defined by the system requirements.
· Design, develop, and maintain scalable backend services using Kotlin and the Kotlin ecosystem for JVM development (Exposed, Ktor, Serialization, …)
· Design and Implement Relational Data Stores, in particular using Postgres from a JVM application (currently using Kotlin Exposed). Incorporate in the design non-functional characteristics like reliability, performance, and data integrity.
· Document your designs, when appropriate using markdown and UML to share and review with other team members.
· Write clean, efficient, and well-documented code with a focus on maintainability and testability.
· Create well documented, clear pull requests (GitHub) to be reviewed and respond to reviews in a timely way.
· Review Pull Requests and designs by other members of the team in a proactive and timely manner.
· Packaging and Deployment
· Develop and deploy:
· µ-services using containers (Docker)
· Helm and Kubernetes deployment descriptors
· Jar Libraries
· Gradle Build Configurations and Scripts
· Work together with DevOps and cloud engineering teams to define, implement and maintain infrastructure services on AWS with CloudFormation and CDK.
· Maintenance
· Troubleshoot, debug, and resolve production issues.
· Monitor the alert channels from the system (together with the rest of the team) to detect potential issues early and apply remedies before there is customer impact if possible.
· Software Engineering
· Participate and contribute to daily standups (daily) and backlog grooming, sprint reviews (weekly)
· Manage your personal backlog of tickets in Github, maintain a clean structure of branches, commits and pull-requests for your work.
· Contribute ideas and solutions to help improve our architecture, processes, and team culture.
REQUIRED EXPERIENCE & QUALIFICATIONS
- · 3+ years of professional backend development experience (Kotlin strongly preferred, or Java/Spring Boot).
- · Hands-on experience with Postgres or other relational databases.
- · Solid understanding of RESTful API design principles and gRPC.
- · Experience with containerization (Docker) and Kubernetes orchestration.
- · Strong knowledge of AWS services (ECS, EKS, RDS, S3, Lambda, etc.).
- · Familiarity with System and Software design methodologies (UML, C4) to be able to read, understand and produce documentation of designs when necessary.
- · Familiarity with modern Configuration Control (Github) CI/CD pipelines (Github Actions, Gradle, Helm) and modern DevOps practices.
- · Strong verbal and written communication skills and ability to work collaboratively in a distributed team. Particular emphasis on the ability to clearly define and communicate issues, difficulties and obstacles to the team.
- · Proven track record as a self-starter who delivers reliable, high-quality work without constant supervision.