Description
Join our Team
About this opportunity:
Ericsson invites applications for the role of Software Developer. In this challenging and fulfilled position, you will be tasked with constructing customer's solutions during the building phase of the Software Development Life Cycle (SDLC). As a Software Developer, you will be responsible for performing the detailed design of application and technical architecture components and classes according to the specification provided by the System Architect. The role also involves coding Software components and contributing to the early testing phases, as well as extending your support towards system testing.
What you will do:
• Design and develop RESTful APIs using FastAPI.
• Develop and consume REST APIs efficiently using Python asyncio and libraries like tenacity for retry mechanisms.
• Implement robust Object-Oriented Programming (OOP) principles in Python (version 3.10+ preferred).
• Leverage multithreading for concurrent programming tasks to optimize application performance.
• Integrate and work with Kafka Message Bus using the confluent-kafka Python library.
• Write and maintain high-quality unit tests using PyTest for thorough test coverage.
• Build and containerize applications using Docker, and deploy them to Kubernetes clusters with Helm.
• Develop and manage OpenAPI Specifications to ensure API documentation and compatibility.
• Set up monitoring and performance metrics using Prometheus (counters, gauges, and histograms).
• Collaborate using version control systems like GitLab and contribute to CI/CD pipelines (knowledge of GitLab CI is a plus).
The skills you bring:
• Strong understanding of Python 3.10+ features (e.g., structural pattern matching, type hints).
• Hands-on experience in asynchronous programming and error handling using asyncio and tenacity.
• Deep knowledge of microservices architecture and REST API design.
• Proficiency with containerization and orchestration tools (Docker, Kubernetes, Helm).
• Experience in working with Apache Kafka or Confluent Kafka for message bus integration.
• Solid understanding of metrics and monitoring with Prometheus.
• Familiarity with software development lifecycle tools and processes, especially in Agile environments.
Good to Have:
• Experience with GitLab CI pipelines.
• Familiarity with other Python frameworks or libraries.
• Contributions to open-source projects.