Senior Software Engineer

Location: New York, NY

Hecht Search

About the Role

We’re seeking a Senior Software Engineer with at least six years of professional experience to develop reliable, high-performance applications in a technology-driven financial environment. This position combines hands-on programming, software architecture, and complex problem-solving.

You’ll work on backend services, data-intensive applications, and established software platforms. The role calls for strong engineering fundamentals, independent judgment, and the ability to deliver practical solutions as technical requirements evolve.

Key Responsibilities

Software Development and Architecture

  • Design, develop, and maintain production applications and backend services.
  • Build software components that process large volumes of data accurately and efficiently.
  • Improve existing codebases through refactoring, architectural updates, and performance optimization.
  • Evaluate scalability, reliability, and maintainability when designing new functionality.
  • Integrate applications with existing systems and services.
  • Apply sound software engineering practices throughout development and testing.

Technical Problem-Solving and Collaboration

  • Investigate complex software defects, performance bottlenecks, and system reliability issues.
  • Take ownership of development projects from requirements gathering through implementation.
  • Evaluate technical alternatives and explain the tradeoffs behind engineering decisions.
  • Work with engineers and business stakeholders to understand operational requirements.
  • Participate in code reviews, technical discussions, and collaborative troubleshooting.
  • Adapt implementation plans as requirements and priorities change.

Required Skills and Qualifications

Professional Experience

  • 6+ years of professional software engineering or application development experience.
  • Proven experience building and maintaining production software.
  • Strong understanding of software architecture, application design, and development best practices.
  • Experience working with complex codebases and interconnected systems.
  • Ability to manage technical assignments independently while collaborating with other engineers.
  • Strong analytical skills, attention to detail, and clear technical communication.

Programming Languages

Advanced proficiency in at least one of the following languages is required:

  • Java: Backend development, application services, and object-oriented programming.
  • C++: Systems programming and performance-sensitive applications.
  • Python: Application development, data processing, and engineering automation.

Experience with multiple languages is beneficial but not required.

Core Computer Science Knowledge

  • Algorithms and data structures.
  • Object-oriented programming and software design principles.
  • Application architecture and component integration.
  • Debugging, testing, and performance optimization.
  • Software scalability, reliability, and maintainability.
  • Computational problem-solving and technical analysis.

Education

A bachelor’s degree in Computer Science or a closely related STEM field is required. Relevant disciplines include Software Engineering, Computer Engineering, Mathematics, and other technical fields with a strong computing foundation.

Engineering Environment and Working Style

You’ll contribute to software used in demanding operational environments, where application performance, system stability, and thoughtful technical decisions are important.

What to Expect

  • Complex engineering challenges: Work on applications involving substantial datasets, multiple services, and demanding performance requirements.
  • Technical ownership: Make implementation decisions and follow projects through to delivery.
  • Cross-functional collaboration: Work with engineering colleagues and business teams to translate requirements into software solutions.
  • Architectural involvement: Recommend improvements to application design, performance, and maintainability.
  • Adaptable development: Navigate evolving specifications and changing technical priorities.
  • Hands-on engineering: Continue developing software while contributing to broader technical decisions.

Salary, Bonus, and Benefits

Base Salary and Performance Bonus

  • Annual base salary: $200,000 to $350,000, depending on experience, qualifications, and technical expertise.
  • Discretionary annual bonus: Performance-based compensation may range from 50% to 250% of base salary, depending on individual and business performance.
  • Bonus eligibility: Awards are not guaranteed, and actual amounts may vary based on applicable compensation considerations.

Employee Benefits

The overall compensation package may also include:

  • Medical insurance and healthcare coverage.
  • Life insurance benefits.
  • Retirement savings programs.
  • Tax-advantaged savings opportunities.
  • Additional eligible employee benefit programs.

Why Consider This Opportunity?

This Senior Software Engineer position offers a combination of challenging development work, architectural responsibility, and exposure to sophisticated financial technology systems.

  • Develop applications that support complex, data-intensive operations.
  • Apply Java, C++, or Python expertise to meaningful engineering challenges.
  • Contribute to software design, performance improvements, and technical decisions.
  • Work across different applications and systems rather than a narrowly defined development function.
  • Build on your experience while remaining closely involved in hands-on software engineering.

This role is well suited to an experienced engineer who enjoys writing dependable software, solving difficult technical problems, and taking responsibility for solutions that need to perform reliably in production.

Back to Jobs

  • Max. file size: 100 MB.
Share this job Posting: