About this role
You will take on the following responsibilities:
- Design, simulate, and test digital logic for FPGA-based systems with support from experienced engineers.
- Contribute to reusable RTL components and verification environments.
- Write tests and debugging tools using SystemVerilog, Python, or similar languages.
- Use simulation and waveform-analysis tools to investigate functional and performance issues.
- Gain hands-on experience with synthesis, timing analysis, and FPGA implementation workflows.
- Explore hardware-software interfaces and help integrate components into larger systems.
- Collaborate with hardware, software, networking, and quantitative teams.
- Document your work and present your findings to the team.
You should possess the following qualifications:
- Currently pursuing a bachelor’s or master’s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related technical field.
- Completed coursework or projects in digital logic, computer architecture, embedded systems, computer networking or a related area.
- Familiarity with a hardware-description language such as SystemVerilog, Verilog, or VHDL.
- Basic programming experience in Python, C, C++, or a similar language.
- Understanding of foundational digital-design concepts, including combinational and sequential logic, finite-state machines, pipelining, and clocked circuits.
- Strong problem-solving, communication, and collaboration skills.
- Interest in learning FPGA development, verification, computer networking, and low-latency systems.
- Experience through coursework, labs, research, student teams, or personal projects; prior professional hardware experience is not required.
Nice to have—but not required
- Experience with an FPGA development board or vendor toolchain.
- Familiarity with simulation, testbenches, assertions, or waveform debugging.
- Exposure to synthesis, timing constraints, clock-domain crossings, or hardware verification.
- Familiarity with networking concepts or protocols such as Ethernet, TCP/IP, or UDP.
- Participation in robotics, chip design, embedded systems, competitive programming, or engineering clubs.
- Experience using Git or another version-control system.
- Interest in high-performance computing or financial technology.