Job Description: Java Developer with Expertise in Stock Markets and FIX/FAST ProtocolsResponsibilities:Develop, maintain, and optimize Java applications with a focus on stock market functionalities.Implement and manage communication protocols including FIX (Financial Information Exchange) and FAST (FIX Adapted for Streaming).Ensure code is highly organized, clean, and adheres to best practices for readability and maintainability.Incorporate robust logging mechanisms at every step for easy debugging and monitoring.Design efficient and optimum code capable of handling multiple operations simultaneously in a dynamic stock market environment.Integrate and manage third-party libraries specific to FIX and FAST protocols.Deploy and manage applications on AWS EC2 instances, ensuring smooth migration from local development to cloud environment.Qualifications:Core Java Expertise: Proficient in Java SE with a deep understanding of object-oriented programming principles.Experience with FIX and FAST Protocols: Hands-on experience working with FIX and FAST protocols, including their implementation and troubleshooting.Stock Market Knowledge: Familiarity with stock market operations, trading systems, and financial instruments.Third-Party Libraries: Experience with third-party libraries related to FIX/FAST protocols and integrating them into Java applications.Clean Code Practices: Ability to write clean, well-documented, and maintainable code. Familiarity with coding standards and best practices.Logging and Monitoring: Proficiency in implementing logging mechanisms using tools like Log4j, SLF4J, or similar. Experience with monitoring tools to ensure system health and performance.Concurrency and Performance Optimization: Strong understanding of concurrency in Java and experience with performance optimization techniques to handle high-throughput, low-latency requirements.Socket, Sessions, and TCP: Understanding of socket programming, session management, and TCP/IP protocols to ensure reliable communication in stock trading applications.Testing and Debugging: Experience with unit testing (JUnit, TestNG) and debugging tools to ensure code quality and reliability.Version Control: Proficient with version control systems like Git.Agile Methodologies: Experience working in Agile development environments.Deployment and AWS: Experience with deploying Java applications to AWS EC2 instances, including understanding of underlying compilation and deployment processes.Additional Prerequisites:Database Knowledge: Understanding of SQL and experience with relational databases (e.g., MySQL, PostgreSQL) and non-relational(Mongo-db).Networking Concepts: Knowledge of networking principles and protocols, especially those relevant to financial markets.Security Best Practices: Awareness of security practices in financial software development to ensure data integrity and confidentiality.Communication Skills: Strong verbal and written communication skills for effective collaboration with team members and stakeholders.Problem-Solving Abilities: Strong analytical and problem-solving skills to tackle complex technical challenges.Preferred Qualifications:Certifications: Relevant certifications in Java, financial markets, or related technologies.Experience with Microservices: Knowledge of microservices architecture and experience in building scalable, distributed systems.Cloud Platforms: Familiarity with cloud platforms (AWS, Azure, GCP) and experience in deploying applications in the cloud.