Senior Security Software Engineer

The Role

As a senior engineer, you will lead the design, build, and operation of secure cloud platforms and services. You will own core authentication and authorization capabilities and set engineering standards for how users and systems sign in and what they can do. You will shape the architecture, mentor other engineers, and help keep production systems secure, reliable, and easy to operate.

What You’ll Do:

  • Lead the design and implementation of authentication and authorization frameworks using open industry standards.

  • Architect and build access control systems that use permissions, roles, and attributes to decide who can perform specific actions.

  • Design and implement policy-driven and distributed authorization solutions.

  • Lead security and authorization reviews of services and drive remediation of issues.

  • Design, develop, test, and maintain cloud-native microservices and web application programming interfaces.

  • Define, version, and document application programming interfaces using standard interface definition formats.

  • Make key decisions for how services are built, deployed, and operated on public cloud platforms.

  • Write clean, testable, and secure code in one or more languages such as Go, Java, Python, JavaScript, and Structured Query Language (SQL).

  • Create and review technical designs, architecture documents, and diagrams.

  • Use artificial intelligence–based development tools to improve design, coding, testing, and documentation.

  • Design and implement containerized workloads using container runtimes and orchestration platforms.

  • Lead the design and improvement of continuous integration and continuous delivery pipelines.

  • Use infrastructure-as-code tools to define and manage cloud infrastructure.

  • Define and implement observability for services, including metrics, logs, traces, dashboards, and alerts.

  • Integrate and operate centralized logging and analytics solutions.

  • Design data models and manage data storage using relational databases, graph databases, and other data technologies.

  • Model and store authorization relationships and permissions using graph-based data stores.

  • Use modern engineering tools for development, testing, troubleshooting, and event streaming.

  • Mentor and coach other engineers and share engineering best practices in security and cloud.

Your Skills & Abilities (Required Qualifications):

  • 5+ years of experience as a software engineer or security engineer, including work on authentication, authorization, or access control.

  • Experience in a senior or lead engineering role with ownership of services or platforms.

  • Bachelor’s degree in Computer Science, Software Engineering, Information Technology, or a related field, or equivalent experience.

  • Proven experience designing and implementing authentication flows and authorization models using open standards in production.

  • Experience building and maintaining role-based and attribute-based access control systems for complex use cases.

  • Strong programming skills in one or more of the following: Go, Java, Python, JavaScript, Structured Query Language (SQL).

  • Experience building cloud-native microservices and web application programming interfaces with modern frameworks.

  • Experience building and operating services on a public cloud platform.

  • Experience with containerization and orchestration technologies.

  • Experience designing and implementing continuous integration and continuous delivery pipelines.

  • Experience with infrastructure-as-code tools for managing cloud resources.

  • Experience with observability tools and practices for metrics, logging, and tracing.

  • Experience working with relational and/or graph databases, including data modeling.

  • Strong problem-solving skills with a focus on security, reliability, scalability, and maintainability.

  • Clear written and verbal communication skills, including the ability to lead design discussions.

  • Experience mentoring other engineers and contributing to engineering standards and practices.

What Can Give You a Competitive Advantage (Preferred Qualifications):

  • Deep experience with distributed authorization and policy engines, including graph-based authorization.

  • Experience modeling complex permissions and relationships in graph or relationship-focused data stores.

  • Experience with centralized logging and search platforms for large, distributed systems.

  • Experience designing and operating observability for high-availability, low-latency services.

  • Experience with event streaming platforms and message-driven architectures.

  • Proficiency with modern engineering tools, source control, database tools, and interface testing tools.

  • Ability to provide technical leadership across teams and influence architecture and platform roadmaps.

  • Ability to work effectively with engineering, security, and operations teams.

  • Willingness to drive modernization of platforms, tools, and engineering practices.

  • Demonstrated ownership in taking complex systems from design through launch and ongoing support.

  • Strong written and verbal communication skills, including concise technical documentation and clear presentations.

#LI-SB3

Back to blog

Common Interview Questions And Answers

1. HOW DO YOU PLAN YOUR DAY?

This is what this question poses: When do you focus and start working seriously? What are the hours you work optimally? Are you a night owl? A morning bird? Remote teams can be made up of people working on different shifts and around the world, so you won't necessarily be stuck in the 9-5 schedule if it's not for you...

2. HOW DO YOU USE THE DIFFERENT COMMUNICATION TOOLS IN DIFFERENT SITUATIONS?

When you're working on a remote team, there's no way to chat in the hallway between meetings or catch up on the latest project during an office carpool. Therefore, virtual communication will be absolutely essential to get your work done...

3. WHAT IS "WORKING REMOTE" REALLY FOR YOU?

Many people want to work remotely because of the flexibility it allows. You can work anywhere and at any time of the day...

4. WHAT DO YOU NEED IN YOUR PHYSICAL WORKSPACE TO SUCCEED IN YOUR WORK?

With this question, companies are looking to see what equipment they may need to provide you with and to verify how aware you are of what remote working could mean for you physically and logistically...

5. HOW DO YOU PROCESS INFORMATION?

Several years ago, I was working in a team to plan a big event. My supervisor made us all work as a team before the big day. One of our activities has been to find out how each of us processes information...

6. HOW DO YOU MANAGE THE CALENDAR AND THE PROGRAM? WHICH APPLICATIONS / SYSTEM DO YOU USE?

Or you may receive even more specific questions, such as: What's on your calendar? Do you plan blocks of time to do certain types of work? Do you have an open calendar that everyone can see?...

7. HOW DO YOU ORGANIZE FILES, LINKS, AND TABS ON YOUR COMPUTER?

Just like your schedule, how you track files and other information is very important. After all, everything is digital!...

8. HOW TO PRIORITIZE WORK?

The day I watched Marie Forleo's film separating the important from the urgent, my life changed. Not all remote jobs start fast, but most of them are...

9. HOW DO YOU PREPARE FOR A MEETING AND PREPARE A MEETING? WHAT DO YOU SEE HAPPENING DURING THE MEETING?

Just as communication is essential when working remotely, so is organization. Because you won't have those opportunities in the elevator or a casual conversation in the lunchroom, you should take advantage of the little time you have in a video or phone conference...

10. HOW DO YOU USE TECHNOLOGY ON A DAILY BASIS, IN YOUR WORK AND FOR YOUR PLEASURE?

This is a great question because it shows your comfort level with technology, which is very important for a remote worker because you will be working with technology over time...