Back-End Developer
Job Description:
We are looking for a developer responsible for building scalable and resilient systems, including anything from back-end services to their client-end counterparts. Your primary responsibilities will be to design and develop these applications and coordinate with the rest of the team working on different infrastructure layers. Therefore, a commitment to collaborative problem solving, sophisticated design, and a quality product are essential.
Responsibilities
• Design solutions according to business requirements
• Collaborate with business stakeholders and other team members
• Follow agile methodologies for deliveries
• Write tested, maintainable and industry-standard code
• Take ownership of tasks end-to-end
• Refactor legacy code when applicable
• Ensure visibility and observability of deliverables
Job requirements:
• Proficient in at least one high-level strongly-typed language, e.g., Java, Scala, C# with a good knowledge of its ecosystem (we mainly use C#/.NET Core)
• Strong understanding of object-oriented programming, design patterns and
principles
• Strong understanding of Web API technologies, e.g., REST, WebSockets
• Experience with writing unit, integration, or e2e tests
• Understanding of NoSQL and SQL, their differences, and their applications
• Familiar with various design and architectural patterns, e.g., microservices
Nice to haves:
• Experience with observability tools and techniques, e.g., Kibana, Logging
• Experience with CI/CD
• Experience with on-prem or cloud, e.g., Azure, AWS
• Knowledge in blockchain, smart contracts, or crypto
Required Skills:
Logging Scala Contracts Services ARe NoSQL REST Microservices Design Patterns Ownership Tests .NET Business Requirements Deliveries Deliverables Problem Solving Agile Methodologies Infrastructure Integration Programming Writing C# Java SQL Design Business