Title : Java Backend Developer
Duration : 12+ Months contract
Location : Plano, Texas - Onsite
Job Description : Responsibilities :
- Write clean, reusable, and high-quality production code, even in unfamiliar codebases, frameworks, or languages, to address Client or complex problems.
- Develop, test, and maintain backend services using Node.js and Java.
- Design and implement RESTful APIs and microservices.
- Produce software requirements specifications and determine their operational feasibility at scale to meet and exceed business requirements.
- Continuously integrate and deliver software components into a fully functional software system while improving the continuous integration process.
- Work with AWS services such as Lambda, EC2, S3, DynamoDB, Flink, RDS, API Gateway, and SQS.
- Work with IaaS tools such as Terraform.
- Optimize application performance, scalability, and security.
- Collaborate with Platform engineers and product teams.
- Implement CI / CD pipelines on GitLab.
- Facilitate end-to-end unit and integration testing to ensure code quality
- Perform advanced troubleshooting, debugging, and upgrading of existing systems
- Lead and facilitate team system design, engineering, and architecture in discussion and documentation
- Define engineering velocity and feature tradeoffs
- Lead technical innovation efforts to solve technical / business challenges
- Manage feature vs technical debt prioritization for optimization and engineering efficiencies
- Lead reviews of complex code, ensuring adherence to software development best practices and providing guidance during the merge review process
- Translate research into impactful and high-performing products
- Develop and maintain documentation, best practices, and ethical guidelines for projects
- Provide thoughtful and high-quality feedback on merge requests
- Conduct code and architecture reviews, and ensure high standards for code quality, testing, and documentation
- Identify and address complex technical issues in both development and production environments
- Coach more junior Software Engineers through targeted feedback and guidance to improve technical skills, overcome challenges, and achieve specific goals
- Make recommendations to team on resources to stay up to date with industry trends / developments
- Lead projects, including defining project objectives, developing project schedules, preparing cost estimates, allocating resources, and ensuring timely delivery under direction of Manager / Product Owner
Required Qualifications :
5+ years of software engineering experience writing clean, concise, tested, maintainable codeProficiency in Java for backend developmentHands-on experience with AWS services including Lambda, API Gateway, DynamoDB, S3, etc.Strong knowledge of RESTful APIs, microservices architecture, and event-driven systemsExperience with databases including SQL (PostgreSQL, etc.) and NoSQL (DynamoDB, etc.)Experience with CI / CD pipelines and DevOps best practicesUnderstanding of concepts regarding security, privacy, performance, etc.Hands on experience applying current best practices and principles in software developmentExperience in observability practices such as logging and tracingExperience in leading projects through all phases of the software development lifecycle under directionDemonstrates advanced problem-solving, troubleshooting, decision making skillsAbility to apply systems thinking to understand interdependencies and design solutions that achieve resultsExperience working in an Agile software engineering environmentAbility to learn and apply new technologies, programming practices, patterns, and methodsExperience mentoring, providing technical guidance, and training more junior team membersOrganized and detail-orientedAbility to work independently and take ownership of tasks / assignmentsAbility to develop healthy working relationships and collaborate with peers and leadersExhibits integrity and high standards in work qualityExcellent verbal and written communication skillsExperience effectively communicating complex technical information to stakeholders at all levels in a clear, concise, and meaningful manner to ensure effective collaboration and alignment throughout the project lifecycleValues diversity and differences amongst individuals in interactionsNice to Have :
Proficiency in Node.js