Cardinal Financial Company, LP

Software Engineer Java Full Stack Must live in Eastern or Central Time Zone USA

Cardinal Financial Company, LP published 4 days ago

$60k - 125k

Junior, Mid-Level, Senior, Full-time

– No office location

React to this job: 7 9 1
Posted 4 days ago
High response rate

About this job

Job type: Full-time
Experience level: Junior, Mid-Level, Senior
Role: Full Stack Developer
Industry: Finance, Financial Technology
Company size: 1k–5k people
Company type: Private

Remote details

Preferred Timezone: (GMT-05:00) Eastern Time


Job description

Software Engineer Java Full Stack 

Who We Are

Cardinal Financial is a fast-growing, technology-based mortgage lender reinventing how people get home loans. We understand great people are the key to great companies.

Who We Need

We're looking for a bright, hard-working, and passionate full-stack Java software engineer that wants to be part of a team and company building great technology.

The position is remote but you must work from your US home. We prefer if you work eastern time zone hours but we will consider central time zone candidates ONLY.

What You’ll Do

  • You'll collaborate with an intelligent and supportive engineering team in an agile environment, and with management and stakeholders that love the technology we produce.
  • You’ll do full-stack development because it benefits the team and product when an engineer is familiar with the entire
  • You’ll manage your stories completely, including prioritization, working with stakeholders for design and specs, communicating status to all, writing the code, and documenting what you've
  • You’ll write clean, concise code, and robust unit
  • You'll create well-designed UIs that make our users productive and simple for our customers to
  • You'll participate in code reviews and daily interactions to ensure our application meets our high standards. We mix up the review teams so you'll get exposed to the whole system.
  • You’ll find ways to improve our applications and how we allowing us to make more happen with less.

What You’re Like

  • You love a fast environment with a lot of You take pleasure in creation, chaos, spontaneity, change, debate and silence.
  • You’re passionate about great code design, great UX, security, performance and
  • You pride yourself on understanding projects top to
  • You’re comfortable working in a team where each of us has a huge impact and we depend on each other to get things
  • You enjoy working alone or working with You’re comfortable doing things even when you’re not told exactly what to do.
  • You like helping others on things that have nothing to do with your

What You Need

  • You have a bachelor’s degree in Computer Science or related field and at least 2 years of software development experience on a large-scale web
  • You communicate well whether you’re getting specs from a stakeholder, writing those specs, explaining a design to your colleagues, or patiently helping a user
  • You can analyze a feature story and design a robust solution for You can create specs for complex business rules and calculations.
  • You write well-designed code that you and others will find easy to understand and modify six months from
  • You have a strong understanding of object-oriented design and how to implement your designs in Java. You’re comfortable with Linux commands and
  • You know how to design good databases and your SQL skills are
  • You’ve built UIs using HTML, CSS and Javascript (including OO JavaScript, not just JQuery). Experience with single-page application frameworks like Angular is a
  • Experience implementing HTTP / XML integrations with third-party systems is a

Our Technology

Our application is a challenging and complex system that includes lender and borrower interfaces, workflow, document management, advanced automation, and integrations with external entities and services.

The server architecture is stateless, cleanly managing the business logic and persistence layer, exposed as a RESTful JSON API. The server is written using a combination of Java 11 on Jetty, and Node.js for asynchronous tasks. Our database is MySQL with MyBatis ORM and uses Redis for caching and non-critical message queuing.

The UI uses a custom, JavaScript MVC framework with dynamic code loading modules, client-side routing and templates, powerful data-binding features, integrated services, and advanced component architecture.

Our applications are containerized, utilizing AWS services to deploy on EC2 via ECS. We use Aurora to scale and handle DB failover. We monitor with CloudWatch and push urgent issues to PagerDuty for triage. We use Jenkins to test and deploy.

All infrastructure is built with Infrastructure-as-code tools like Terraform. Server images are built with Packer to enable reproducible results with security hardening. We use GuardDuty, AWS Config and Macie for security analysis.

We develop on Macs, manage our code in git, and collaborate using chat and Asana.

Life at Cardinal Financial Company, LP

About Cardinal Financial Company, LP

Cardinal Financial is a nationwide direct mortgage lender whose mission is to prove that homeownership is possible for everyone. By bringing an open-minded approach to an often closed-minded industry, we're able to embrace every unique financial situation differently in order to craft the best possible loans for our borrowers. We pride ourselves on providing excellent service backed by our groundbreaking technology, and these two components of our process come together to complete a simple, personalized mortgage experience. But it all starts with our people.

Our proprietary application, Octane, gets loans closed fast, offers seamless integration with third-party software, allows for hassle-free underwriting with no layered conditions, and offers a live, web-based portal--not a bottlenecked queue. We do this with great engineers.

As a member of our Software Engineering team...

  • You’ll be involved in every aspect of building and supporting our SaaS enterprise mortgage lending platform.
  • We’re an agile shop and you’ll be part of choosing what stories you’ll work on as they come up in the backlog.
  • You’ll do full-stack development because we’ve found it benefits the team and product when an engineer is familiar with the entire stack and has a genuine interest in all our software technology. We also recognize that each engineer is passionate and skilled in specific layers. We manage to blend the two realities very well.
  • You’ll manage your stories completely including working with end users to determine what is required, designing the UI, classes, business logic and data. We describe our approaches informally to get rapid review and critique by others.
  • You’ll write clean, concise code, and robust unit tests for all your work. Finished code will be reviewed by others in the team. We mix up the review teams so everyone has good exposure to the whole system.
  • You’ll find ways to improve our product and how we work. We leverage tools and innovation to make more happen with less. When we identify an improvement, we implement it fast.
  • You’ll help with production support and help users when needed.


  • Benefits: Medical, Dental, Vision and More
  • Competitive compensation package
  • Competitive compensation package
  • Highly engineered & proprietary technology
  • Strength, Stability, Vision.
  • A commitment to be a relevant market leader.
  • 4 Floating Holidays & 15 PTO days (based on Quarter 1 start date )
  • 100% Remote Positions EST

Joel Test

Source control
One-step build
Daily builds
Bug database
Bugs fixed before writing new code
Up-to-date schedule
Quiet working conditions
Best tools that money can buy
Code screening
Hallway usability testing
Learn more about Cardinal Financial…
Software Engineer Java Full Stack Must live in Eastern or Central Time Zone USA at Cardinal Financial Company, LP