What are the responsibilities and job description for the Java Software Engineer position at Surge Technology Solutions Inc?
Type: W2 or 1099........ (No C2C)
Visa: Green Card, US Citizens (Only USA Applicants)
Role : Java Developer
Location : Raleigh, NC or Atlanta, GA
Experience: 8 Yrs
Face to Face Interview After Clearing Initial Round
Job Description:
- Design, develop, test, and maintain robust backend services using Java and Spring Boot frameworks.
- Architect and implement microservices-based systems to ensure scalability, modularity, and ease of deployment.
- Build and maintain RESTful APIs to support web, mobile, and third-party integrations.
- Write clean, maintainable, and efficient code following best practices and coding standards.
- Collaborate closely with frontend developers, DevOps engineers, QA teams, and product managers to deliver high-quality features.
- Participate in system design discussions, code reviews, and technical planning sessions.
- Ensure seamless integration between different services and external systems.
- Implement security best practices, including authentication, authorization, and data protection mechanisms.
- Optimize application performance, scalability, and reliability through profiling and tuning.
- Handle error handling, logging, monitoring, and alerting for production systems.
- Work with relational (MySQL, PostgreSQL) and/or NoSQL databases (MongoDB, Cassandra) for efficient data storage and retrieval.
- Design and manage database schemas, indexing strategies, and query optimization.
- Integrate and manage message queues and streaming platforms (e.g., Kafka, RabbitMQ) to enable asynchronous communication and data flow.
- Ensure high availability and fault tolerance in distributed systems.
- Develop and maintain CI/CD pipelines to automate build, test, and deployment processes.
- Work with containerization tools like Docker and orchestration platforms such as Kubernetes.
- Troubleshoot and debug complex production issues and provide timely resolutions.
- Write and maintain unit tests, integration tests, and ensure adequate test coverage.
- Stay updated with the latest industry trends, tools, and technologies in backend development.
- Contribute to continuous improvement of development processes and system architecture.