At Magic, we have multiple openings for skilled professionals in Java. Apply to join our engineering team!
Essential Job Requirements: 
Java Developer implements server APIs and scripts to solve complex, difficult business and engineering problems. The position demands someone who can analyze and recommend candidate solutions that meet functional as well as non-functional needs such as scalability, reliability, and extensibility.   We are looking for a Senior Software Engineer with technical skills and a passion for delivering quality code to join our team. With your technical expertise, you will manage project deliverables; develop, test, deploy, maintain, and enhance our product outcomes; the work would include developing DBMS, API integrations, CI/CD pipelines, etc. The person should be self-motivated and have a keen interest in working for a fast-paced, dynamic organization.
Responsibilities:
Designs and implements highly scalable, available, performant, maintainable REST API services utilizing Java in support of a fast, flexible content delivery system in a rapidly moving business environment.   
Implements new software solutions as well as maintains and enhances existing systems  
Engages with staff members across all functional areas (including development, project management, QA, and devOps) to ensure seamless delivery of development solutions  
Works with DevOps teams to ensure a streamlined CI/CD pipeline is utilized to maximize delivery efficiency. Also works to ensure scalability, availability, monitoring/alerting, auto-scaling, and infrastructure-as-code practices are followed. 
Critical analysis and problem-solving ability are a must, and prior experience with performance engineering  
Works with product stakeholders and analysts to refine and clarify UI requirements into tasks and provide estimates for those tasks 
Ensures that code adheres to strict standards for accessibility, security, performance, and maintainability.   
Actively participates in requirements, architecture, and design meetings 
Writes documentation for both internal and external consumers, covering design artifacts, code, and fixes 
Other duties as assigned 
Skills:
Java 1.8
Strong foundational knowledge of Core Java, Collection framework, Multi-threading (concurrency) 
Design patterns, data structure 
REST API design 
Microservice Architecture 
Unit Testing / Test Coverage 
Exposure to API Performance engineering 
Significant experience or knowledge is required in the following areas: 
Python -nice to have.
 Server Frameworks:
 Spring Boot (for Java)
 Databases: MongoDB,Redis
 Caching:  Redis for caching frequently accessed data.
 Web Servers: Apache on Cloud
Containerization/Orchestration: Docker
 Cloud Services: AWS
 Continuous Integration/Continuous Deployment (CI/CD): Jenkins
 Version Control: Git
 Monitoring and Logging: New Relic for monitoring and logging.
 Security: Snyk and GIT leaks and OWASP security guidelines
Primary Skill : Java 
Secondary Skills : Amazon Cloud, 
                              Database,
                              Mongo DB, 
                              REST Based Web Services, 
                               Spring Boot
Experience Range : 3-5 years
