Software Engineer, Senior

Freddie MacMcLean, VA

About The Position

At Freddie Mac, our mission of Making Home Possible is what motivates us, and it’s at the core of everything we do. Since our charter in 1970, we have made home possible for more than 90 million families across the country. Join an organization where your work contributes to a greater purpose. Position Overview: We are seeking a highly skilled Senior Software Engineer to design, develop, and implement a best-in-class reconciliation and attribution platform for Freddie Mac’s Trust Cash Administration Team (TCAT). The ideal candidate will have a strong background in data engineering, software development, and AWS, with a passion for building impactful solutions. Our Impact: The Business Engineering (BE) group, within the Investments and Capital Markets Business Technology Office (I&CM BTO), delivers innovative technology solutions supporting the entire I&CM division. We collaborate with teams across multiple divisions to build solutions that drive trading, treasury, and operational activities. Your Impact: You will develop and deliver critical trading, reconciliation, and reporting applications that power Freddie Mac's Capital Markets activities, ensuring optimal performance and reliability for various business functions. This includes: End-to-end software development - including analysis, planning, architecture, design, development, automated testing, deployment, and maintenance using industry best practices and security standards. Performance optimization - analyze system performance, identify bottlenecks, and implement solutions to enhance application efficiency and scalability. Collaborative solution delivery - partner with business stakeholders to gather requirements, leverage proof of concepts for technical decisions, and implement solutions with cross-functional teams. Production support and maintenance - support applications across environments, resolve critical issues, and fulfill ad-hoc requests to ensure seamless business operations.

Requirements

  • 5–7 years of IT experience in software design, development, integration, and testing using Java and Python.
  • 5–7 years of experience with relational databases such as Sybase, SQL Server, MySQL, Postgres, and/or DB2.
  • 3–5 years of experience developing RESTful web services with Spring Boot.
  • 2–3 years of experience developing front-end GUIs with Angular 8 or higher.
  • 2–3 years of experience writing automated unit, integration, regression, performance, and acceptance tests.
  • Strong understanding of software design principles.
  • College Degree, preferable in Computer Science, or equivalent experience; advanced studies/degree preferred.
  • Excellent problem-solving, analytical, and technical skills.
  • Critical thinking and the ability to act quickly to evaluate situations, make decisions, and solve problems.
  • Adaptability and versatility to thrive in new environments and diverse projects.
  • Strong oral and written communication skills; ability to collaborate with a variety of personalities.
  • Effectiveness in environments with continuous change and tight deadlines.
  • Demonstrated business acumen, intellectual maturity, and relationship management skills.

Nice To Haves

  • Knowledge of SAS is a plus.
  • Quick learner who seamlessly adapts to new technologies and project requirements while consistently delivering high-quality results.
  • Strong analytical skills with proven ability to rapidly assess complex situations, make sound technical decisions, and implement effective solutions under pressure.
  • Self-motivated engineer who takes complete ownership of deliverables, proactively identifies process improvements, and ensures successful project completion.
  • Excellent interpersonal skills enabling clear, effective communication across all stakeholders - from technical teams to leadership and external partners.
  • Excels in dynamic environments with shifting priorities, aggressive deadlines, and 24/7 support requirements while maintaining exceptional code quality.

Responsibilities

  • End-to-end software development - including analysis, planning, architecture, design, development, automated testing, deployment, and maintenance using industry best practices and security standards.
  • Performance optimization - analyze system performance, identify bottlenecks, and implement solutions to enhance application efficiency and scalability.
  • Collaborative solution delivery - partner with business stakeholders to gather requirements, leverage proof of concepts for technical decisions, and implement solutions with cross-functional teams.
  • Production support and maintenance - support applications across environments, resolve critical issues, and fulfill ad-hoc requests to ensure seamless business operations.
© 2024 Teal Labs, Inc
Privacy PolicyTerms of Service