Logo
Cycle Labs

Software Engineer - Packages Lead

Cycle Labs, Raleigh, North Carolina, United States, 27601


Job DescriptionCycle Labs

Cycle Labs offers the best cultural aspects of a startup with the security of a mature business. The Cycle Labs platform has been successfully in the market for over 8 years and the company became a standalone business through a "spin-out" event in July 2021. At Cycle Labs we work, act, and think like a startup with the benefit of a solution with a large customer base and proven market fit.

Cycle Labs is a software and services company composed of innovators dedicated to modernizing enterprise solution deployment and lowering risk through world-class test automation. We encourage our clients and our team to question everything and to strive for continuous, iterative improvement. Cycle Labs is the owner of the patented Cycle test automation platform. Our mission is to enable teams to build, deploy and support better products and solutions; freeing people and organizations from the concerns of business risk so they can focus on business growth.

The Role

As the Packages tech lead, you will be responsible for designing and developing features for the steps, scenarios, and suites (the "packages") that our customers and partners will use to write tests for the Cycle Testing Platform. You will also be responsible for developing tooling around the Platform, such as migrations and package management. You will work closely with the Product and Engineering teams.

In this role, you must have the heart of both a developer and a tester in that you will be building solutions to testing problems. It will require backend development skills (like web service APIs and command line tooling) as well as test automation skills (like BDD, writing good test cases, and handling race conditions). Nevertheless, this is very much a software development role: you will be building a core part of Cycle Labs' product offering.

What You'll Do

Design and Development:

Create and implement packages for the Cycle Testing Platform, including drivers for native Cycle Steps, libraries of CycleScript scenarios, service APIs, and tooling for Cycle projects.Collaboration:

Work closely with Engineering and Product teams to understand requirements and design effective testing strategies. Provide feedback and insights to improve overall software quality and development practices.Coding:

Leverage your expertise in Golang, Java, and Scala to contribute to the development of robust, high-quality code. Experience with similar languages is acceptable if you can quickly adapt to the required technologies.Testing Principles:

Build software testing, automation, and Behavior-Driven Development (BDD) principles into the packages you build so that Cycle tests are robust, reliable, and efficient.Independence:

Demonstrate the ability to work independently and take ownership of test automation projects, ensuring timely and effective delivery of high-quality test solutions.Continuous Improvement:

Stay current with industry trends and advancements in test automation and software engineering to continually enhance testing processes and methodologies.Additional Responsibilities:

Technical Leadership:

Lead the design and development of scalable and reliable software solutions. Provide technical guidance and mentorship to engineers on architecture, design patterns, and best practices.System Design and Architecture:

Architect and design robust, scalable, and maintainable software systems. Collaborate with product management to translate business requirements into technical specifications.Coding and Development:

Write clean, efficient, and maintainable code using best practices and modern development techniques. Contribute to coding tasks and actively participate in code reviews.Problem-solving:

Analyze complex technical problems and propose innovative solutions. Drive technical discussions, evaluate alternatives, and make informed decisions.Quality Assurance:

Implement and advocate for best practices in software testing, including unit testing, integration testing, and automation. Ensure high code quality and adherence to coding standards.Collaboration and Communication:

Collaborate effectively with cross-functional teams, including product management, design, QA, and operations.Continuous Improvement:

Stay updated on industry trends, technologies, and best practices. Drive initiatives to improve development processes, tools, and methodologies within the team.Requirements

What You'll Bring

Experience:

Minimum of 5 years of experience as a software engineer with at least 3 years focused on test automation.Technical Skills:

Proficiency in Golang, Java, and Scala or similar languages. Proficiency with Selenium WebDriver. Hands-on experience with BDD and Cucumber-like frameworks as well as web UI and API development.Agile Experience:

Familiarity with Agile methodologies and practices.Problem-Solving:

Strong analytical and problem-solving skills with a keen attention to detail and the ability to identify and address issues proactively.Communication:

Excellent communication skills, both verbal and written, with the ability to articulate complex technical concepts to both technical and non-technical stakeholders.Independence:

Proven track record of working independently, managing multiple tasks, and delivering results in a fast-paced environment.Adaptability:

Ability to thrive in a fast-paced and agile environment, and willingness to take on new challenges as the company grows.Education:

Bachelor's degree in Computer Science, Engineering, Business Administration, or a related field. A Master's degree or MBA is a plus.Benefits

Why join us?

At Cycle Labs, we foster an environment of innovation, open communication, empowerment, and ultimately teamwork striving towards a shared mission. We like to have fun, empower our team members to achieve a healthy work / life balance, and foster an environment of curiosity and trust. The core values we look for in our team members are relentless, authentic, selfless, transparent, empathetic, balanced, and curious.

We offer competitive benefits including unlimited PTO (without the guilt of actually using it), remote-first work, health / dental / vision insurance (employer paid base employee plan), retirement matching, HSA matching, stock options, 12 company holidays, and more!

The Culture We Foster

Through respectful and transparent communication at all levels, Cycle Labs nurtures a strong culture of dedication between individuals and teams, with an emphasis on life-work balance. We are responsible for each other, our teams, and our customers.

Work Environment

Reasonable accommodation(s) can be made; if there is a need, please let your direct supervisor know.

Remote home office environment: dedicated private space with sitting/standing for 6+ hours a day while working on a laptopUse of monitors, keyboard, mouseUtilize different software and communication methods such as Zoom, Slack, phone app, Cycle equipment and softwareCompany and team meetings regularly, including occasional travel to meet in-person

Disclaimer

This job description is not designed to cover or contain a comprehensive listing of activities, duties or responsibilities that are required of the employee. Other duties, responsibilities, and activities may change or be assigned at any time with or without notice as business needs evolve. Cycle Labs is an Equal Opportunity Employer and all qualified applicants will receive consideration for employment without regard to race, color, religion, gender, sexual orientation, national origin, genetic information, age, disability, veteran status, or any other legally protected basis.