4

C++ Lead Software Engineer

405190-Hire Us
Full-time
On-site
Houston, Texas, United States
Description

We have an opportunity to impact your career and provide an adventure where you can push the limits of what's possible.


As a Lead Software Engineer at JPMorgan Chase within the Corporate and Investment Banking Team, you are an integral part of an agile team that works to enhance, build, and deliver trusted market-leading technology products in a secure, stable, and scalable way. As a core technical contributor, you are responsible for conducting critical technology solutions across multiple technical areas within various business functions in support of the firm’s business objectives.


Job responsibilities


 



  • Executes creative software solutions, design, development, and technical troubleshooting with ability to think beyond routine or conventional approaches to build solutions or break down technical problems

  • Develops secure high-quality production code, and reviews and debugs code written by others

  • Identifies opportunities to eliminate or automate remediation of recurring issues to improve overall operational stability of software applications and systems

  • Leads evaluation sessions with external vendors, startups, and internal teams to drive outcomes-oriented probing of architectural designs, technical credentials, and applicability for use within existing systems and information architecture

  • Leads communities of practice across Software Engineering to drive awareness and use of new and leading-edge technologies

  • Take end to end responsibilities of areas/applications and drive projects or Complex assignments

  • Provide overall direction, oversight, and coaching for entry-level to mid-level software engineers that work on basic to moderately complex tasks

  • Design, Enhance and Develop various Applications/Modules in Electronic Trading Stack such as Smart Order Routing, Internal Matching Engine, Market Access, and Risk Management in C++

  • Develop scalable real-time processing solutions using agile methodologies, and develop and maintain automated testing

  • Ensures successful collaboration across teams and stakeholders

  • Identifies and mitigates issues to execute a book of work while escalating issues as necessary


 


Required qualifications, capabilities, and skills


 



  • Formal training or certification on software engineering concepts and 5+ years of applied experience

  • Hands-on practical experience delivering system design, application development, testing, and operational stability

  • Advanced knowledge of C++11 onward 

  • Experience with Low latency high performance computing, and Object Oriented Application Design (OOAD) Networking with good understanding of TCP/UDP protocols

  • Expertise in multi-threading/concurrent programming

  • Proficiency in automation and continuous delivery methods

  • Proficient in all aspects of the Software Development Life Cycle and advanced understanding of agile methodologies such as CI/CD, Application Resiliency, and Security

  • Strong Unix/Linux background with understanding of OS and kernel architecture

  • Experience with Scripting such as  Shell, Perl, or Python

  • Proven experience in design and development of low latency, real-time, scalable electronic trading systems

  • Advanced knowledge of Software Architecture, Design, Algorithms 


 


Preferred qualifications, capabilities, and skills



  • Understanding of FIX protocol is desirable

  • Knowledge of market data distribution and order management system

  • Familiarity with modern Continuous Integration development practices

  • Exposure/Ability learn other languages & technologies like Java, Cloud Technologies etc.

  • Kernel tuning and low-level system programming

  • Knowledge of Electronic Trading and Equities, Futures, and Options Exchange Connectivity in global markets is desirable