This is an exciting opportunity to join the backend engineering team as Team Lead to produce and implement functional software solutions.
You will work with other engineers, product managers and key stakeholders to define and implement software requirements.
Job Title: Lead Software Engineer (Backend)
- State-of-the-art working environment
- Weekly allowance for lunch and internet data
- Access to office Gym and Games room
- Health Insurance including dental and eye care
- Lead architecture designs in product development meetings.
- Identify, prioritize and execute tasks from product requirements.
- Lead the team to implement solutions from architecture and product design.
- Collaborate with Product Managers, Infrastructure Engineers and others to identify performance issues, fix and improve products.
- Write clean, testable and scalable code using C#.
- Revise, update, refactor and debug brownfield codebases.
- Serve as an expert on backend applications and provide technical guidance to mid-level engineers.
- Implement guidelines on organizing the codebase for maintainability.
Requirements and skills
- Strong leadership skills and proven experience as a Team Lead.
- Extensive background in backend software development using C# (version 7 or higher) and .NET (3.1 or higher) ecosystem.
- Proficiency in working with relational databases (e.g., PostgreSQL), NoSQL databases (e.g., Elasticsearch), and caching systems (e.g., Redis).
- Possesses an analytical mindset and excellent problem-solving abilities.
- Capable of working independently and demonstrating self-motivation.
- Exceptional organizational skills and ability to lead a team effectively.
- Proficient in understanding and refactoring complex .NET Core solution codebases to meet modern standards.
- Skilled at estimating accurate timelines for upgrading projects at the team level.
- Knowledgeable about advanced concepts such as Actor Model (specifically Akka.NET) and event streaming platforms.
- Familiarity with advanced data structures in Redis and actively seeks to improve data structure and algorithm usage.
- Experienced in applying scaling principles to production services when necessary.
- Comfortable using architecture design tools and familiar with advanced UML diagrams.
- Proactively identifies and solves problems before they impact users.
- Effectively communicates business and technical concepts to diverse audiences in a clear and understandable manner.
- Drives the team to implement recommended concepts for improved speed and quality.
- Familiarity with intermediate-advanced concepts of C# (Expression Trees, Reflection, threading, versioning, tooling, instrumentation, etc.).
- Must be self-driven enough to work with little to no supervision
- Must be able to successfully lead a team of up to 8 engineers
- Must be able to work from home with reliable internet connectivity and stable electricity supply in a quiet environment
- Must own a functional personal laptop capable of meeting the work demands.
- Ability to perform comfortably in a fast-paced, deadline-oriented work environment
- Must be attentive to details
- BSc in Computer Science/Engineering or a related degree or higher