At a Glance
- Tasks: Build scalable services and APIs that process large data sets for real-time applications.
- Company: Censys, a leader in Internet intelligence with a mission to map the web.
- Benefits: Competitive salary, remote work, bonus eligibility, and equity options.
- Other info: Work remotely and enjoy excellent career growth opportunities in a collaborative environment.
- Why this job: Join a dynamic team and make a real impact on global Internet security.
- Qualifications: 3+ years in software engineering with experience in distributed systems and cloud providers.
The predicted salary is between 120000 - 157000 £ per year.
Remote (US)
Company Background
Censys’ mission is to be the one place to understand everything on the internet. Frustrated by the lack of trustworthy Internet intelligence, we set out to create the industry’s most comprehensive, accurate, and up-to-date map of the Internet. Today, Censys delivers real-time Internet intelligence and actionable threat insights to global governments, over 50% of the Fortune 500, and leading threat intelligence providers worldwide.
Location: This position is remote within the United States.
Role Summary
We’re looking to hire a Software Engineer (Backend, Distributed Systems) to build scalable services, APIs, frameworks, and internal tooling that process large amounts of data and make them highly available, providing direct value to customers and other parts of our organization. Censys operates distributed infrastructure for Internet-wide scanning, and you will help us continue our mission to build high-quality datasets, APIs, and engineering foundations that turn research and detection ideas into production-ready capabilities.
What You’ll Do
- Help build large scale, real-time services and applications which leverage our massive datasets to power internal APIs and external applications.
- Build tooling, libraries, frameworks, and services that support security, research and data platform initiatives.
- Productionize prototypes into reliable internal tools, services, or platform capabilities.
- Participate in planning and technical discussions with engineering and product teams to help build the right solutions.
- Develop and maintain systems such as data pipelines, messaging systems, databases, caching layers, and services that run in the cloud or on-prem.
- Work with Machine Learning Engineers and Security Researchers to realize solutions that affect security outcomes.
Skills You Have
- 3+ years of software engineering experience building distributed systems (i.e., data ingestion pipelines, databases, services).
- Experience with object-oriented programming – we use Go.
- Experience with at least one cloud provider, like AWS, Azure, or GCP.
- Experience or familiarity with message queue technologies, like AWS Kinesis, Google Pub/Sub, Kafka, or other.
- Experience working with databases, like BigTable, Cloud Spanner, HBase, Cassandra, or other.
- Understanding of core distributed systems concepts such as scalability, fault tolerance, and reliability.
- Familiarity with using AI.
- Ability to write understandable, testable code with an eye toward maintainability.
- Strong communication skills and the ability to work effectively with other engineers and product managers.
Things that make you stand out
- Familiarity with gRPC or REST.
- Familiarity with data serialization technologies, like Protobuf, MessagePack, etc.
- Experience building, deploying, or maintaining containerized services in Kubernetes.
- Understanding of how the Internet works; how machines and services communicate using defined protocols / standards.
- Any security domain knowledge is a bonus.
For candidates located in high cost of living locations (Seattle, San Francisco Bay Area, or New York City Metro), the salary range for this position is $137,000 - $169,000 + bonus eligibility and equity. For candidates located in any other US location, the salary range for this position is $120,000 - $157,000 + bonus eligibility and equity.
EEO Statement
As set forth in Censys’s Equal Employment Opportunity policy, we do not discriminate on the basis of any protected group status under any applicable law.
California Privacy Rights Notice
Pursuant to the California Consumer Privacy Act (CCPA), we are providing you with notice that we collect personal information from job applicants for business purposes, including evaluating your candidacy for employment, conducting interviews, and, if applicable, completing the hiring process. The categories of information we may collect include identifiers (such as name and contact information), professional or employment-related information (such as work history, education, and references), and other information you provide in your application. We do not sell or share your personal information. For more information on how we use and protect your personal information, and your rights under the CCPA, please refer to our Privacy Policy.
Software Engineer (Backend), Distributed Systems employer: Censys
Censys is an exceptional employer that fosters a collaborative and innovative work culture, allowing Software Engineers to thrive in a remote environment across the US. With a strong focus on employee growth, Censys offers opportunities to work on cutting-edge technologies and large-scale projects that directly impact global security, while also providing competitive salaries, bonus eligibility, and equity options tailored to various living costs. Join us to be part of a mission-driven team dedicated to creating reliable Internet intelligence and making a meaningful difference in the world.
StudySmarter Expert Advice🤫
We think this is how you could land Software Engineer (Backend), Distributed Systems
✨Tip Number 1
Network like a pro! Reach out to folks in the industry, especially those at Censys. A friendly chat can open doors and give you insights that a job description just can't.
✨Tip Number 2
Show off your skills! If you've got a GitHub or portfolio, make sure it's up to date. Share projects that highlight your experience with distributed systems and APIs – it’s a great way to stand out.
✨Tip Number 3
Prepare for the tech interview! Brush up on your coding skills and be ready to discuss your past projects. We want to see how you think and solve problems, so practice explaining your thought process.
✨Tip Number 4
Apply through our website! It’s the best way to ensure your application gets seen. Plus, it shows you're genuinely interested in joining the Censys team. Don’t miss out!
We think you need these skills to ace Software Engineer (Backend), Distributed Systems
Some tips for your application 🫡
Tailor Your Application:Make sure to customise your CV and cover letter for the Software Engineer role. Highlight your experience with distributed systems and any relevant projects you've worked on. We want to see how your skills align with what we do at Censys!
Showcase Your Technical Skills:Don’t hold back on showcasing your technical expertise! Mention your experience with Go, cloud providers, and any message queue technologies you’ve used. We love seeing candidates who can demonstrate their coding prowess and understanding of distributed systems.
Be Clear and Concise:When writing your application, keep it clear and to the point. Use straightforward language and avoid jargon unless it's relevant. We appreciate applications that are easy to read and get straight to the good stuff!
Apply Through Our Website:We encourage you to apply directly through our website. It’s the best way to ensure your application gets into the right hands. Plus, it shows us you’re serious about joining our team at Censys!
How to prepare for a job interview at Censys
✨Know Your Tech Stack
Make sure you’re well-versed in the technologies mentioned in the job description, especially Go and cloud providers like AWS or GCP. Brush up on distributed systems concepts, as you'll likely be asked to explain how they apply to your past projects.
✨Showcase Your Problem-Solving Skills
Prepare to discuss specific challenges you've faced in building scalable services or data pipelines. Use the STAR method (Situation, Task, Action, Result) to structure your answers and highlight your contributions effectively.
✨Communicate Clearly
Strong communication skills are key for this role. Practice explaining complex technical concepts in simple terms, as you’ll need to collaborate with engineers and product managers. Consider doing mock interviews to refine your delivery.
✨Demonstrate Your Passion for Security
Since the role involves working with security researchers, it’s a good idea to brush up on any relevant security knowledge you have. Be ready to discuss how your work can impact security outcomes and show enthusiasm for contributing to this area.