JOBSEARCHER

Java Software Engineer

About the RoleAs a Java Software Engineer based in our Alabama office, you will play a critical role in designing, developing, and maintaining high-quality software solutions that meet our clients' needs. You will collaborate closely with cross-functional teams to deliver scalable and efficient applications using Java and related technologies. Your work will directly impact the performance and reliability of our software products, ensuring they adhere to best practices and industry standards. You will be responsible for writing clean, maintainable code and participating in code reviews to uphold software quality. Additionally, you will contribute to the continuous improvement of our development processes by embracing Agile methodologies and Test Driven Development principles.Job ResponsibilitiesDevelop, test, and maintain Java-based applications in alignment with project requirements and timelines.Collaborate with product owners, designers, and other engineers to define and implement new features.Participate actively in Agile ceremonies such as sprint planning, daily stand-ups, and retrospectives.Write unit and integration tests to ensure code quality and reliability following Test Driven Development practices.Review code written by peers to ensure adherence to coding standards and best practices.Troubleshoot, debug, and optimize existing software to improve performance and user experience.Document software designs, technical specifications, and development processes clearly and comprehensively.Minimum QualificationsBachelor’s degree in Computer Science, Software Engineering, or a related field.Proven experience in Java development with a strong understanding of object-oriented programming concepts.Familiarity with Agile development methodologies and experience working in Agile teams.Experience with Test Driven Development and writing automated tests.Proficiency in C programming language is required to support integration with legacy systems.Preferred QualificationsExperience with modern Java frameworks such as Spring or Hibernate.Knowledge of cloud platforms and containerization technologies like AWS, Docker, or Kubernetes.Familiarity with continuous integration and continuous deployment (CI/CD) pipelines.Experience with front-end technologies such as JavaScript, HTML, and CSS.Advanced certifications in Java or Agile methodologies.SkillsThe required skills are essential for daily tasks such as writing robust Java code and integrating with existing C-based systems, ensuring seamless functionality across platforms. Agile development methodologies guide the workflow, enabling effective collaboration and iterative progress through regular team interactions and sprint cycles. Test Driven Development is applied rigorously to create reliable, maintainable code by writing tests before implementation, which reduces bugs and improves software quality. Proficiency in Java development allows the engineer to build scalable and efficient applications, while knowledge of C supports maintaining and enhancing legacy components. Preferred skills like familiarity with modern frameworks and cloud technologies enhance the ability to innovate and optimize deployment processes, contributing to the overall success of software projects.