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
- Adds to team culture of diversity, equity, inclusion, and respect
- Develop complex FPGA solutions for Equities trading with focus on massive throughput and ultra-low latency
- Interact with users and external vendors for requirements gathering and procurement
- Partner with internal teams including business, development, quality assurance and operations to deliver reliable, low latency solutions
Required qualifications, capabilities, and skills
- Formal training or certification on software engineering concepts and proficient advanced experience
- Hands-on practical experience delivering system design, application development, testing, and operational stability
- Proficiency in automation and continuous delivery methods
- Proficient in all aspects of the Software Development Life Cycle
- Expert knowledge of FPGA architecture and design in VHDL/Verilog
- High speed/low latency FPGA design
- Development of verification strategies and writing complex test benches
- Excellent understanding of software and hardware interaction
- Complex RTL and system level simulation
- Experience in achieving timing closure in complex designs
- Xilinx/Altera architecture and design experience
Preferred qualifications, capabilities, and skills
- C++ and Python experience
- Scripting skills to automate day-to-day development and testing tasks
- Board design experience
- Knowledge of Intel processor architecture and bus interconnect technologies like PCI-E, QPI
- Drivers and Memory Management