We are looking for an experienced Senior Software Engineer who will be responsible for
designing, developing and maintaining high scalable, reliable and efficient software
applications. The successful candidate will work closely with cross-functional teams to deliver
complex software solutions.
Qualifications
- Minimum of 3 years of software development experience.
- Experience designing and developing highly scalable, multi-user application architectures.
- Strong background in object-oriented software development.
- Solid understanding of SOLID principles and design patterns.
- Knowledge of DevOps practices.
- Experience with relational and NoSQL databases.
- Experience with Microservices Architecture and messaging technologies such as RabbitMQ.
- Experience with distributed caching technologies such as Redis.
- Knowledge of cloud technologies and cloud-native development.
- Hands-on experience with C#, ASP.NET, .NET Framework, and .NET Core.
- Experience with Domain-Driven Design (DDD) and Test-Driven Development (TDD).
- Strong attention to detail with a focus on documentation.
- Collaborative team player with excellent communication skills.
- Accountable and proactive, with the ability to take technical ownership and initiative when needed.
- Experience with Kibana and Elasticsearch.
- Experience with Oracle PL/SQL.
- Good written and spoken English
- Experience in CRM systems and customer relationship management applications.
Responsibilities
- Research and develop new technologies and evaluate their usability.
- Provide end-to-end software development expertise and mentor software engineers.
- Coordinate and actively participate in the analysis, design, and development of Digiturk infrastructure applications.
- Contribute to the continuous improvement and enhancement of the software infrastructure.
- Guide and support software teams building applications on the infrastructure and provide technical expertise on selected technologies.
- Design or oversee data architecture and application architecture for software solutions.
- Stay up to date with emerging technologies and adapt innovations to organizational needs.
- Establish and enforce coding standards, ensuring compliance across development teams.
- Adapt to a fast-paced work environment with strong time management skills.