Senior Software Engineer — Python and UI experience is a must
SonicWall is a cybersecurity forerunner with more than 30 years of expertise and is recognized as a leading partner-first company, ensuring our partners and their customers are never alone in the fight against cybercrime. With the ability to build, scale and manage security across the cloud, hybrid and traditional environments in real-time, SonicWall provides relentless security against the most evasive cyberattacks across endless exposure points for increasingly remote, mobile and cloud-enabled users. With its own threat research center, SonicWall can quickly and economically provide purpose-built security solutions to enable any organization—enterprise, government agencies and SMBs—around the world. For more information, visit www.sonicwall.com or follow us on Twitter, LinkedIn, Facebook and Instagram.
Own the platform services and user-facing components across both products, including job orchestration, management and customer APIs, supporting microservices, web applications, data integrations, and deployment infrastructure. Responsible for ensuring reliable workflow execution, seamless user experiences, and scalable service delivery across the platform.
Responsibilities
- Own the job orchestration platform, including message queue-based scheduling, task dispatching, workflow management, and lifecycle execution to ensure reliable processing and accurate verdict generation.
- Design, develop, and maintain management, appliance-facing, and customer-facing APIs across both products using threaded and asynchronous Python services.
- Own and enhance supporting UrlProtection services, including the headless browser automation pipeline, WHOIS services, and customer-facing time-of-click functionality.
- Maintain and modernize the operator and customer web application, a large-scale TypeScript/Vue single-page application, to improve usability, performance, and maintainability.
- Own the data access and integration layer, including MySQL, Microsoft SQL Server, Redis, MongoDB, Consul, and URL verdict caching services.
- Manage build, packaging, and deployment processes, including Cython builds, Docker multi-stage image creation, CI/CD workflows, and multi-VM Docker Compose deployments.
- Troubleshoot and resolve production platform issues, including queue backlogs, workflow failures, stuck jobs, API issues, and deployment-related incidents.
- Participate in architecture discussions, design reviews, and code reviews to uphold engineering standards and platform quality.
- Collaborate with cross-functional teams to improve platform scalability, reliability, and operational efficiency.
Requirements
- Minimum of 8 years of software engineering experience with a Bachelor's degree in Computer Science, Engineering, or a related field; alternatively, 6+ years with a Master's degree, 3+ years with a PhD, or equivalent professional experience.
- Strong Python development experience across both multithreaded and asynchronous programming models, including asyncio, aiohttp, and FastAPI.
- Experience designing and supporting distributed task processing systems using RabbitMQ, Taskiq/Redis, Celery, or similar messaging technologies, with a focus on reliability, idempotency, and fault recovery.
- Experience building and maintaining web APIs using Flask, FastAPI, or similar frameworks, with knowledge of WSGI/uWSGI and Nginx-based deployments.
- Front-end development experience with JavaScript/TypeScript and modern component frameworks such as Vue, React, or Angular, including contemporary build and deployment tooling.
- Proficiency with MySQL, Microsoft SQL Server, Redis, MongoDB, and Consul.
- Experience with Docker, Docker Compose, CI/CD platforms such as Jenkins, and Debian packaging; familiarity with build environments supporting compiled Python extensions is preferred.
- Comfortable working in Linux environments, including process troubleshooting, log analysis, and shell scripting on Ubuntu or Debian-based systems.
- Strong written communication skills and the ability to collaborate effectively in a distributed, asynchronous team environment.
Cross-Team Coverage
This role operates within a small engineering team where members provide coverage across multiple technical areas. In addition to primary responsibilities, you will provide maintenance-level support and first-line incident triage for areas such as the Python analysis pipeline, static analysis engines, machine learning operations, and virtual machine diagnostics. The expectation is to maintain operational continuity during team absences while coordinating deeper technical issues with the appropriate subject matter experts.
#LI-KB7
#LI-Hybrid
#Python
#Redis
#Flask
SonicWall is an equal opportunity employer.
We are committed to creating a diverse environment and are an equal opportunity employer. All qualified applicants receive consideration for employment without regard to race, color, ethnicity, religion, sex, gender, gender identity and expression, sexual orientation, national origin, disability, age, marital status, veteran status, pregnancy, or any other basis prohibited by applicable law.
At SonicWall, we pride ourselves on recruiting a diverse mix of talented people and providing active security solutions in 100+ countries.