Position OverviewWe are seeking a highly skilled Lead Software Engineer to join a high-performing engineering team focused on building and optimizing scalable, high-throughput enterprise systems. This role is ideal for a senior engineer with deep Core Java expertise and strong experience designing and supporting distributed systems where performance, reliability, resiliency, and scalability are mission-critical.
Key Responsibilities- Design, develop, and optimize high-performance Core Java applications.
- Lead architecture discussions around scalability, throughput, latency, and resiliency.
- Analyze, troubleshoot, and improve application performance across distributed environments.
- Develop optimized, maintainable, and scalable software components and unit tests.
- Conduct code reviews and identify opportunities for optimization and risk mitigation.
- Support deployments, release management, and production stability initiatives.
- Collaborate with engineering teams to resolve complex technical challenges.
- Tune applications for multi-threaded and high-concurrency environments.
- Drive engineering best practices, design patterns, and continuous improvement initiatives.
- Lead technical projects and influence engineering direction across teams.
Required Qualifications- 8+ years of hands-on Core Java development experience.
- Strong expertise in:
- Multi-threading
- Concurrent programming
- Shared memory and synchronization
- JVM internals and Garbage Collection tuning
- JNI and NIO
- Concurrent data structures and collections
- Strong knowledge of algorithms and data structures.
- Experience with TCP/IP networking, including TCP and UDP protocols.
- Experience building scalable, high-throughput distributed systems.
- Strong troubleshooting, debugging, and performance optimization skills.
- Experience participating in architecture and system design discussions.
- Ability to balance reliability, scalability, and performance requirements.
Preferred Qualifications- Experience in financial services, trading platforms, or derivatives systems.
- Exposure to cloud technologies.
- Knowledge of fault tolerance and redundancy patterns.
- Experience with BDD testing frameworks.
- Experience supporting low-latency systems.