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 Chief Technology Office’s Global Technology & Applied Research team, you serve as a seasoned member of an agile team to design and deliver production quality technology implementation in a secure, stable, and scalable way. You are responsible for carrying out critical technology solutions across multiple research areas wi... more details
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 Chief Technology Office’s Global Technology & Applied Research team, you serve as a seasoned member of an agile team to design and deliver production quality technology implementation in a secure, stable, and scalable way. You are responsible for carrying out critical technology solutions across multiple research areas within the team in support of the firm’s business objectives. You work in close collaboration with the quantum inspired algorithm research team.
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 in C, C++, Python and other languages and reviews and debugs code written by others. Write high-quality documentation and unit tests for the software solutions
Design and implement high-performance distributed executions of the software solutions and deploy them onto distributed platforms including multi-threaded CPUs, multiple CPUs and GPUs
Optimize the software solutions for execution speed, memory efficiency and communication latency through algorithmic improvements and vectorization
Work with the quantum-inspired algorithm researchers to identify bottlenecks in subroutines of the algorithms and devise methods to speed up the executions
Identify dependencies in the code to ensure seamless execution in other environments
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
Adds to team culture of diversity, equity, inclusion, and respect
Required qualifications, capabilities, and skills
Formal training or certification on software engineering concepts with 5+ years of industry experience
Bachelor’s degree combined with 4+ years of industry experience in algorithm execution or a Master’s or Ph.D. degree in computer science, physics, math, engineering or related fields combined with 2+ years of industry experience
Hands-on practical experience delivering system design, application development, testing, and operational stability
Advanced in one or more programming language(s) - Proficiency in Python
Experience leading software projects.
Proficiency in automation and continuous delivery methods
Proficient in all aspects of the Software Development Life Cycle
Advanced understanding of agile methodologies such as CI/CD, Application Resiliency, and Security
Demonstrated proficiency in software applications and technical processes within a technical discipline (e.g., cloud, artificial intelligence, machine learning, mobile, etc.)
In-depth knowledge of the financial services industry and their IT systems
Practical cloud native experience
Preferred qualifications, capabilities, and skills
Proficiency in C++ and Standard Template Library (STL). Proficiency in C / Julia
Experience with GPU acceleration and distributed programming of algorithms (CUDA, OpenCL, OpenMP, MPI, AVX)
Familiarity with mainstream compilers (gcc, icc, llvm/clang) especially their features and options related to tuning the performance of the compiled software
Experience in implementing data structures for randomized algorithms in big data settings (e.g., Sketching techniques, sampling techniques for numerical linear algebra)
Experience in building tensor network libraries for applications in machine learning and optimization. Experience in using FPGAs to accelerate algorithms across machine learning or optimization
Experience in running large scale Monte-Carlo simulations. Experience in accelerating annealing type algorithms using GPUs
Experience in finance is a plus, though no prior familiarity with financial use cases is required
Job Abstracts is an independent Job Search Engine. Job Abstracts is not an agent or representative and is not endorsed, sponsored or affiliated with any employer. Job Abstracts uses proprietary technology to keep the availability and accuracy of its job listings and their details. All trademarks, service marks, logos, domain names, and job descriptions are the property of their respective holder. Job Abstracts does not have its members apply for a job on the jobabstracts.com website. Additionally, Job Abstracts may provide a list of third-party job listings that may not be affiliated with any employer. Please make sure you understand and agree to the website's Terms & Conditions and Privacy Policies you are applying on as they may differ from ours and are not in our control.
We would like to take a second to Welcome You to Job Abstracts, the nation’s largest Pure Job Board. With over 3.1 million job listings from 15,000+ Companies & Organizations, we help job searchers find careers that match their interests. As an anonymous user, you have probably discovered how easy our system is to use. However, you have just scratched the surface of what we can offer.
We encourage you to Register so you can use our most powerful features: searching with multiple terms, setting up multiple locations, establishing favorite companies, and accessing your search history. If you find a job you like, you can apply directly for it, and then, keep notes on it. We will also keep a lookout for jobs that match your search terms and email you when we find something you may like.
You can register for free and the system is free to use. If you like our system so far, click on Register and unlock the power required by serious job searchers.
Any time you conduct a search, the system shows you job matches, ranked by their Relevance Score (RS).
The score is calculated by a proprietary algorithm that uses Intelligent Machine Learning.
The Relevance Score tells you how well the job opportunity matches your search term or terms.
When not logged in, the system is limited to one search term. Scores for single term matches are usually lower.
When you register, log in, and set up multiple terms prioritized by importance, the jobs found for you will receive a much higher Relevance Score.