Staff Software Engineer, Platform
Our Company:
Since being founded in 2001, BlackLine has become a leading provider of cloud software that automates and controls the entire financial close process. Our vision is to modernize the finance and accounting function to enable greater operational effectiveness and agility, and we are committed to delivering innovative solutions and services to empower accounting and finance leaders around the world to achieve Modern Finance.
We are a technology-based company with a sense of adventure and a vision for the future. Every door at BlackLine is open. Just bring your brains, your problem-solving skills, and be part of a winning team at the world's most trusted name in Finance Automation. Work, Play and Grow at BlackLine!
Job Summary:
As a Staff Software Engineer, you will play a crucial role in building the next generation of BlackLine application and data platform. You will be driving innovation into our product suite by designing, developing, troubleshooting, maintaining, optimizing and scaling cloud-based backend platform components, services and frameworks, including but not limited to Event Bus, API Gateway, Developer Portal, Job Scheduler, Identity Management, Search, Workflow Orchestration and Data Integration. In addition to being a hands-on engineer, you will also lead and mentor other engineers in the team.
If you have a passion for delivering products that make a difference, are driven to make things better in all that you do and are eager to work in a collaborative agile environment where developers are dedicated to solving customer problems and innovating, we would love to talk to you.
Responsibilities:
- Provide technical expertise and leadership in requirements analysis, design, effort estimation, development, testing and delivery of highly scalable and secure distributed backend services.
- Work with product management, architects and other engineering teams to understand stated and unstated needs and turn them into functional and technical requirements.
- Maintain a strong sense of business value and return on investment in planning, design, and communication.
- Lead technical design and architecture discussions and help drive technical decisions while making appropriate trade-offs on technology, functionality, robustness, performance and extensibility.
- Estimate the project scope and timelines, and consistently deliver on those commitments.
- Implement, refine, and enforce software development techniques to ensure that the delivered features meet software integration, performance, security, and maintainability expectations.
- Research, test, benchmark, and evaluate new tools and technologies, and recommend ways to implement them in product development.
- Maintain high standards of software quality and technical excellence within the team by establishing good practices and writing clean, testable, maintainable, and secure code.
- Inspire a forward-thinking team of developers, acting as an agent of change and evangelist for a quality-first culture within the organization.
- Mentor and coach team members, guide them to solutions on complex design issues and do peer code reviews.
- Proactively identify issues, bottlenecks, gaps, or other areas of concerns or opportunities and work to either directly affect change, or advocate for that change.
- Perform critical maintenance, deployment, and release support activities, including occasional off-hours support.
Qualifications:
- BS degree in Computer Science, or equivalent experience.
- 6+ years of professional experience in building Web scale highly available multi-tenant SaaS with focus on backend platform, frameworks, RESTful APIs and microservices.
- 3+ years of experience with a public cloud (AWS, Azure, or GCP) and solid understanding of cloud-native services.
- Expert in one or more object-oriented programming languages - C#, Java or C++.
- A solid computer science foundation including data structures, algorithms, and design patterns, with a proven track record of writing high concurrency, multi-threaded, secure, scalable code.
- Proven experience in delivering one or more core platform services, such as API gateway, identity management, authentication, messaging (Kafka or RabbitMQ), workflow orchestration, job scheduling and search.
- Experience as a technical lead for design, architecture and code review of highly scalable distributed systems and event driven architecture.
- Fluent in SQL, No-SQL, data modeling and transactional flows.
- Superior analytical, problem-solving and system level performance analysis abilities.
- Excellent written and verbal communication skills.
- Adaptable team player with strong collaboration skills and a focus on results and value delivery.
- Experience working in an Agile development environment.
- Passion for engineering excellence through automation, unit testing, and process improvements.
- Experience with continuous delivery and infrastructure as code.
- Good knowledge of internet security issues in software design and code.
- Open source contributor.
- Proficient with ERP (SAP, Oracle, Netsuite or Microsoft) platforms.
- Experience with data integration and ETL
- FinTech or Financial services domain background.