What are the responsibilities and job description for the Application Developer position at FDM Group?
About The Role
This position requires the successful candidate to work on a W2 directly with FDM. We cannot accept C2C, 1099 or employment sponsorship (e.g. H1-B) for this position.
FDM is a global business and technology consultancy delivering client and industry driven solutions through our 5 core specialist Practices; Software Engineering, Data & Analytics, IT Operations, Change & Transformation, and Risk, Regulation & Compliance.
FDM is seeking a Application Developer located in Addison, TX to support a project in the financial services sector. Involvement in this project is anticipated to last initially 12 months but may be extended.
Software Engineer Day-to-day:
- Develop and deliver software solutions that meet functional, non-functional, and regulatory compliance requirements.
- Write, test, debug, and maintain code, mainly using Java Python and related technologies.
- ·Participate actively in Agile ceremonies such as daily stand-ups, sprint planning, and retrospectives.
- Collaborate cross-functionally with business analysts, product owners, QA, and other engineers to refine requirements and deliver features.
- Design, develop, and modify application components and system interfaces with emphasis on maintainability, integration, high availability, resiliency and security.
- Engage in continuous integration and deployment (CI/CD) activities including automating build, test, and release pipelines.
- Troubleshoot defects, perform root cause analysis, and ensure software quality through unit, integration, and regression testing.
- Contribute to code reviews.
- Conduct spike solutions or proof-of-concepts to reduce risks and evaluate new approaches.
- Use tools and technologies such as Jenkins, Git, REST APIs, and cloud platforms as part of the development lifecycle.
Specific Skillsets Required
- Programming Languages: Strong hands-on experience with Python, Java, or other object-oriented programming (OOP) languages.
- Cloud Platforms: Proficiency in AWS (Amazon Web Services) for deploying, managing, and scaling applications.
- Databases: Solid knowledge of relational databases (Oracle, MySQL, PostgreSQL) and NoSQL, with the ability to write complex SQL queries and perform thorough data validations.
- UI and Frontend: Understanding of UI development along with test automation practices is valuable.
- Infrastructure and Containerization: Experience with container technologies such as Docker and orchestration tools like Kubernetes to manage deployment environments effectively.
- Software Development Life Cycle (SDLC): Deep understanding of SDLC phases and Agile methodologies for iterative and continuous development.
- Security: Awareness of secure coding practices, authentication protocols, cryptography basics, identity and access management, and familiarity with security testing and vulnerability assessment.
- DevOps and CI/CD: Hands-on experience with continuous integration and delivery pipelines using Jenkins, GitLab, or similar tools, plus infrastructure-as-code tools like Terraform or CloudFormation.
- Version Control & Tools: Expertise with version control systems such as Git/GitHub, and collaboration tools like JIRA and Confluence.
- Testing & Debugging: Skilled in unit testing, integration testing, test-driven development (TDD), and debugging using relevant tools and frameworks such as JUnit, PyTest, and Selenium.