We are seeking a talented and experienced Middle Tier Developer to join our team. In this role, you will be responsible for developing and maintaining the middle-tier components of our applications, ensuring seamless communication between the front-end and back-end systems. You will play a crucial role in building robust, scalable, and high-performance applications that meet the evolving needs of our business.
Key Responsibilities:
Design, develop, and implement middle-tier components such as APIs, services, and business logic layers.
Integrate with front-end applications (e.g., web, mobile) and back-end systems (e.g., databases, messaging queues).
Ensure data integrity and security throughout the application stack.
Optimize application performance and scalability.
Participate in all phases of the software development lifecycle, including requirements gathering, design, development, testing, and deployment.
Write clean, well-documented, and maintainable code.
Conduct unit testing and participate in code reviews.
Troubleshoot and debug application issues.
Collaborate with front-end developers, back-end developers, and other stakeholders.
Stay abreast of the latest technologies and industry trends in application development.
Required Skills and Experience:
Bachelor s degree in Computer Science, Computer Engineering, or a related field.
[Number] years of professional experience in middle-tier development.
Strong proficiency in Java, .NET, Python, or other relevant programming languages.
Experience with RESTful APIs, microservices architecture, and message queues (e.g., RabbitMQ, Kafka).
Experience with relational databases (e.g., SQL Server, MySQL, Oracle) and NoSQL databases (e.g., MongoDB, Cassandra).
Solid understanding of object-oriented programming principles and design patterns.
Excellent problem-solving and analytical skills.
Strong communication and interpersonal skills.
Ability to work independently and as part of a team.
Desired Skills and Experience:
Experience with cloud platforms (e.g., AWS, Azure, GCP).
Experience with containerization technologies (e.g., Docker, Kubernetes).
Experience with agile development methodologies (e.g., Scrum, Kanban).