I’m joining Autify, a no-code AI-powered software testing automation platform

Kazuki Higashiguchi
11 min readDec 24, 2021

--

I’m excited to share that I’m joining Autify, a no-code AI-powered software testing automation platform, on January 1, 2022 (The Japanese edition is available here).

Key takeaways

  • Autify provides an AI-powered software testing automation platform, which enables anyone to build tests easily with a no-code.
  • The field of test automation is currently in a period of accelerated evolution.
  • If you are interested in Autify services, try sending a “demo request” from here.

Autify

The mission of Autify is to “Enhance people’s creativity by technology”. Autify provides an AI-powered software testing automation platform, which enables anyone to build tests easily with a no-code.

https://autify.com/

With Autify, anyone can easily automate E2E testing, run them on any major PC browsers as well as smartphone browsers, then AI maintains automated testing scenarios based on your source code changes.

They offer two services, “Autify for Web” for browser UI services and “Autify for Moble” for mobile applications. In order to improve productivity in the software development process, they have divided their long-term roadmap into three phases to expand Autify’s capabilities and product lineup.

https://autify.com/about

The company was founded in San Francisco, US, and graduated from Alchemist Accelerator, a top accelerator in San Francisco, US. After that, they released Autify as its current figure.

They announced that it had raised $10M in Series A funding.

Introduce me

I’ve worked as a software engineer at BASE for over 4 years. The mission of BASE is “Payment to the People, Power to the People.”, and they provide an online shop opening service “BASE”, the shopping service “PayID”, a fundraising service “YELL BANK”, and online payment service “PAY.JP”. The online shop opening service “BASE” has been chosen by many shop owners in Japan, with 1.6 million shops opened (based on information available as of December 22, 2021).

I joined BASE as a software engineer for this service and later joined its subsidiary BASE BANK from the start of its engineering organization, where I was involved in the architecture of the system from scratch and the grow-up of the engineering team. Since I joined there in October 2017, I have been involved in the development of the following products that have been press released.

The brief timeline

First, I joined the company as a backend engineer who uses mainly PHP. After that, I joined the engineering team of its subsidiary at the timing of the start-up, where I was involved in the release of the fundraising service “YELL BANK”. Since then, I have been mainly involved in the growth of the service and became a tech lead. As the engineering team expanded, I introduced and promoted the agile mindset and practices to become a team rather than a collection of individuals. Then I switched from tech lead to engineering manager, and while supporting developers, I also doubled as a quality assurance engineer.

In addition to engineer work, I was also an active contributor to technology conferences, corporate blogs, and commercial magazines.

  • Technology conferences: 59 times for 847 minutes (materials are available on Speaker Deck
  • Corporate blogs: 39 posts
  • Commercial magazines: 2 magazines (about Docker, PHP)

I enjoyed working at BASE, but I made the decision to change jobs at a time when the direction of my two challenges was becoming clearer to me.

  1. Develop software products for software companies
  2. work in a global team

1. Develop software products for software companies

There are different types of software engineers, depending on whether they are more focused on the product itself or software development methodology. If you’re a product manager, the ratio of these concerns is like 8:2, and if you’re more focused on doing software development better, it’s like 2:8. I used to have a complex about being the latter.

However, one day, I found this complex can be solved if I was involved in product development for folks who develop and manage software services. For instance, for those who are interested in methodologies to make more effective use of software testing, the job of solving customers’ problems through products in the area of automated testing is directly linked to their interest in growing the product business.

2. Work in a global team

Since I started working as a software engineer, I have been working with a Japanese team.

The reason why I decided to work in the information technology field in the first place was that I visited a Canadian IT company called D2L when I studied abroad there for a month. That’s why the idea of working as a software engineer in a global engineering team was always in the back of my mind.

The movie at GopherCon 2019 Lightning Talk in available on YouTube.

For these reasons, I have been speaking at international conferences, GopherCon 2019 in San Diego, USA, and CakeFest 2019 in Tokyo, Japan.

Due to the recent situation, it was difficult for me to attend international conferences out of Japan after 2020. On the other hand, I realized that the widespread use of remote work has opened up the possibility of joining a global engineering team while staying in Japan.

Why I decided to join Autify

After reading the job descriptions of 39 companies, 9 companies were selected based on several criteria. Out of all of them, Autify was the most attractive company for my next challenge for the following reasons.

  1. Product in the field of software testing
  2. The impact made by SaaS of software test automation
  3. Not learning from a company, challenging with a company
  4. It would satisfy my curiosity as a software engineer

1. Product in the field of software testing

Since joining BASE, I have been living a software engineer’s life with a strong awareness of software testing among development engineers.

  • The practice of TDD (Test-driven development)
  • Legacy code improvement practices such as characterization tests
  • Practices on good quality unit testing

Later, at a time when my role as a software engineer was gradually changing to team building and people management, I moved to scope software testing in general, not just from a developer perspective.

  • ATDD (Acceptance test-driven development), a practice in the second quadrant with a more business perspective in the four quadrants of agile testing
  • E2E test automation
  • Test planning, design, and execution as a QA engineer
  • Performance testing, which is an area of technical product criticism

I don’t know if I want to spend the rest of my software engineer’s life in the software testing field. However since I happened to be on such a path, and it was a unique part as a software engineer. That’s why I thought that the field of software testing would be a good fit for me.

Another major factor was that in the One-on-One meeting with Mr. Chikawazawa, the CEO, he told me that “Autify’s vision is not only to make E2E test automation.

Autify started out as a translation service (I heard the company name was different at that time). As a result of reflecting on the experience and practicing the concept of “Solving the burning needs to customers” taught in Alchemist accelerator, they have arrived at the “Autify” service.

I think this history is one of the things that make Autify stand out uniquely among test automation services.

2. The impact made by SaaS of software test automation

In recent years, test automation services, have been gaining momentum.

There is often a saying that “technology is a means to an end”. I half agree, but half disagree. Technology is just a means, but it’s still a big deal.

For example, some programming practices are based on the use of modern IDEs (Integrated Development Environment). The IDE has had a great influent on the way we think. In his book “A Philosophy of Software Design”, John Ousterhout recommends not including type information in variable names, partly because modern IDES make it easy to access type information for variables.

“With modern IDEs it is easy to click from a variable name to its declaration (or, the IDE may even display the type information automatically), so there is no need to include this information in the variable name.”

Ousterhout, John. A Philosophy of Software Design, 2nd Edition (p. 127). Yaknyam Press. Kindle Edition.

And more, in an interview with Bob Martin, author of Clean Agile, he said that he never thought iteration would be so much faster than it was about 20 years ago.

The cost of reducing the commit size is lower with git than with subversion, and the machine power that was lacking in the heyday of Agile around 2000 is now being used to speed up the iteration process. This is the reason for the current speed of iteration. The tools and services that we use today as a matter of course have become key parts that shape our development style and thinking.

Or, the practice of CI/CD (Continuous Integration / Continuous Delivery or Deployment) is very smooth nowadays, and I think a very big reason behind this is that CircleCI, GitHub, etc. provide high-level solutions as SaaS.

In other words, tools are a means, but folks’ thinking is constrained by tools. And the idea of test automation is being optimized in various ways within the limitations of current technology. For example, the model “Test automation pyramid” is widely spread in the engineering community (there are also several criticisms and rethinking such as DevOps Bugfiler).

https://www.browserstack.com/guide/testing-pyramid-for-test-automation
https://www.browserstack.com/guide/testing-pyramid-for-test-automation

E2E testing is said to be slow, more fragile, and expensive to maintain. The challenge is that E2E for systems running in a browser is often sensitive to the frequency of changes in the user interface. I think this case shows that it is not possible to overcome this issue in a. straightforward manner if we compete with the tools we currently have, but conversely, the evolution of tools can create reverse feedback to the way we think.

What if AI could fix broken tests in order to solve the maintenance cost issue (i.e. tests tend to be vulnerable to change, a team can’t afford to hire dedicated test automation engineers, and etc)?

What if a test automation service is designed so that anyone can easily create automated tests and maintain the created tests to address the issue of test creation costs (i.e. a team doesn't have the time to create a test infrastructure …etc)?

If the tools eliminate such issues ahead of time, then the strategy and tactics will change.

By the way, this example is exactly what Autify does.

https://speakerdeck.com/autifyhq/autify-company-deck-efd29263-1045-43c2-b2a0-17328638b0fe?slide=15

I have struggled with automating email tests and made the decision to leave it for manual testing because of high realization costs. Right after that, I was shocked to know that Autify can create automated email tests.

Also, when I introduce Autify (and other test automation services), some folks who are familiar with test automation will mention their concern about record-and-playback. Mr. Suemura of Autify explains how Autify is trying to solve the issues pointed out by traditional testing in the following entry

It concludes by saying this.

At Autify, we continue to evolve our platform towards a more ideal test automation tool based on user feedback and reflecting on existing issues with record-and-playback tools. If you’ve had a bad experience with other record-and-playback tools, I strongly suggest trying Autify. If you are interested,

It is often said that technology evolves in a spiral, and I believe that the field of test automation is currently in a period of accelerated evolution.

3. Not learning from a company, challenging with a company

I’ve worked for both my first and second companies, both of which were mid-range companies with 70–300 employees. That’s why I prefer start-ups rather than big tech companies with thousands or millions of employees.

As my next personal challenge, I would like to work in the English-speaking technical community, not only developing software services but also writing blogs and speaking at conferences. Specifically, my mid-term milestone is to publish a commercial book in the English-speaking book market.

Autify is a startup of just over 30 people currently taking on the challenge of succeeding in the global market since its foundation. As Autify becomes widely recognized and implemented globally, I would like to take on the following challenges.

  • Contribute as a software engineer to Autify
  • Form a good culture as a global engineering team as the team expands in the future
  • Expand the scope of the engineering community I am involved with globally

4. It would satisfy my curiosity as a software engineer

My curiosity as a software engineer is somewhat extreme.

I’m more interested in orange parts.

It is thrilling to be exposed to abstract, longer-term, nurturing ideas such as Christopher Alexander’s Pattern Language and XP philosophy.

Another moment that brings me joy is the moment when I reveal the mechanism “behind the API”. In the case of Selenium, it’s not so much the moment I learn how to use the selenium library, but the moment I understand the specification of Selenium WebDriver behind it (my slide).

I was convinced that Autify would be a good fit for my curiosity for the following reasons.

The development of a test automation service has two aspects: the “needs solving” aspect, where we understand the customers and provide solutions to their problems, and the “visionary” aspect, where we develop products to realize our vision as a platform service. Thinking about the future of the service that solves the problem of software providers is directly synonymous with thinking about how to achieve lively software development.

On the other hand, Autify development is mainly the behind of “API” that is abstracted in common web application development (i.e. The specification of selenium WebDriver, deep knowledge of network protocols at RFC level).

Join as a backend engineer

I’m joining Autify as a “backend engineer” which role works on all layers below Ruby on Rails.

https://speakerdeck.com/autifyhq/autify-company-deck-efd29263-1045-43c2-b2a0-17328638b0fe?slide=39

I could have chosen to be an engineering manager or QA engineer as my career, but I chose to be a backend engineer because I could contribute more to the company.

I’ll do my best to contribute to the success of Autify’s business and products.

Conclusion

If this entry has made you interested in Autify services, try sending a “demo request” from here.

Also, if you are interested in joining Autify team, take a look at the company deck which is available on Speaker Deck.

--

--