I'm Angie Jones. Senior Developer Advocate. Ask me Anything! πŸ‘‹

Held on 15 May 2020, 6:00 pm

Hey everyone!

I'm Angie Jones - a Senior Developer Advocate who specializes in test automation strategies and techniques. I share my wealth of knowledge by speaking and teaching at software conferences all over the world, writing tutorials and technical articles on angiejones.tech, and leading the online learning platform, Test Automation University.

As a Master Inventor, I'm known for my innovative and out-of-the-box thinking style which has resulted in more than 25 patented inventions in the US and China. In my spare time, I volunteer with Black Girls Code to teach coding workshops to young girls in an effort to attract more women and minorities to tech.

Let's talk about:

  • Java
  • Test Automation
  • Visual Testing
  • Applitools
  • Test Automation University
  • Automation Cookbook
  • Patents Invention
  • Developer Advocacy
  • Speaking at tech conferences

and more!

I will start answering your questions live on Friday, 15th May, 06:00 PM GMT.

Bolaji Ayodeji's photo

Hi Angie, thanks for this AMA.

Your innovative and out-of-the-box thinking style has resulted in more than 25 patented inventions in the US and China. I've heard the word "patent" several times but only have a blurred understanding of it and I'm sure some others do also. What does patent inventions actually mean?

Also, how did you go about getting a patent?

Lastly, what inspired all 25 patents you got?

Angie Jones's photo

A patent is basically an exclusive right, granted by a country, to make, use, and sell an invention.

I got into patenting while working for IBM, who has a very extensive IP catalog.

My inventions are on things like collaborative software, virtual worlds, smarter planets, and software development enhancements.

You can see them all here

I'll also be giving a talk on the Patent Process including how to come up with ideas at In Streaming Color. Tune in!

Bolaji Ayodeji's photo

Thank you Angie Jones. This is helpful!

Margaret Goldman's photo

Hi Angie, is there a demand for Java in 2020? If yes, are these demand related to newer projects or legacy projects like in corporates? Should a beginner developer learn Java in 2020?

Angie Jones's photo

Good question! Yes, Java is still very much in demand.

It's being used for new projects as well as legacy ones. This CodeNewbie podcast by Peggy Fisher covers What is Java good for and why is it still one of the most popular coding languages

If you're interested in backend or mobile development, then Java is a solid choice to learn in 2020. I highly recommend (lol) my FREE Java course. It's really the best for learning core Java.

Diana Hudson's photo

What significant difficulties have you faced on your way in tech? How did you manage or overcome them?

Angie Jones's photo

I talk about it in this short video ☺️

Ajay GVR's photo

Could you please explain how to learn unit testing, security testing/penetration testing and whitebox testing. Please share if any resources to learn them

Deactivated User's photo

What is the best advice someone has given you that has helped you in your career that you can also give to me?

Angie Jones's photo

Don't be afraid to ask for help. We work in a field where mostly everyone is smart. The work is also very challenging. It can be intimidating, and lead to imposter syndrome, when we struggle.

Be sure to clearly describe the problem, list what you have tried, and then seek assistance on what you are stuck on.

Bolaji Ayodeji's photo

You're an advocate for automated visual testing Angie and I see that this new approach, as opposed to manual testing, automates the process of detecting and reviewing visual UI changes with visual evidence that our application looks and behaves as we intend it too.

Why do you think I should consider this approach and how do you think the developer ecosystem is embracing it.

In general, how can I get started and what resources can you recommend, please?

Angie Jones's photo

Visual testing is AMAZING! Traditional testing tools work with the DOM to determine the state of the application. But just because something exists in the DOM doesn't mean it is presented correctly on the screen. It could be covered by another element, it could be bleeding off the edge of the page, it could be the same color of the page!

Visual testing helps us better test our applications by testing the screen, which is what our users see and interact with.

Developers are really wowed by how visual testing helps them remove their blind spots

Shankhanil Ghosh's photo

Hey!! I am a new grad, and I am slowly getting in to the software industry. What are some domains in the software industry that needs serious development, and at the same time, if developed properly would impact the lives of millions?

Abel Quintana Lopez's photo

Hi Angie, What is for you the best way to manage test automation data? Do you think that manage your test data in files, databases or API are good options?

Angie Jones's photo

All are valid. My favorite strategy is to create and delete the data I need within the test itself via APIs.

Check out Paul Merrill's article on Test Data Strategies.

Abel Quintana Lopez's photo

Angie Jones Thanks a lot!

I like the approach of create and delete the data, but in the company where I work, everyone wants to run the tests with their custom data. How do you share your automated tests and their data for technical and non thecnincal people can run the tests?

Any Advice?

James Franko's photo

How has quarantined life changed the way you used to work? Are you more productive now or less?

Angie Jones's photo

As a developer advocate, I'm used to being on the road, so it's definitely been an adjustment to be home for months. I struggled in the beginning, but am now at a point where I'm as productive as before. I wouldn't say "more" productive though.

Karan Sharma's photo

What are some of the best ways to learn any programming language or framework? What do you follow?

Emmanuel Oche's photo

Hi Angie, I love how you represent the underrepresented community in tech and I'm happy for all your successes.

I'm one of the underrepresented ones and from a developing country coupled with the fact that I'm 17.

In what ways do you think I can maximize my chances of getting good internships to grow and connect?

(I'm learning Javascript)

Angie Jones's photo

If in school, reach out to the Career Center and express interest in obtaining internships.

With COVID-19, it may be hard to get internships and apprenticeships right now. A good way to gain experience from home would be to contribute to open source projects. Not like one typo issue, but really become a part of the project.

Check out the responses to this tweet to find beginner-friendly OS projects to contribute to:

Emmanuel Oche's photo

Thank you. I've gotten to know about selfDefined dictionary through the linked tweet. Angie Jones

Seth Jones's photo

Hi Angie,

I’m an automation developer working primarily with Ruby, Cucumber, and Selenium. I really enjoy test automation and I’m wondering what you would recommend learning for automated mobile testing and why?

Also, what are your favorite tools to work with in testing?

Btw I really enjoy your tech articles.

Thanks again!

Angie Jones's photo

Appium is similar to Selenium so should present a low barrier to entry for you.

My fav tools: Selenium WebDriver, Rest-Assured, Faker.

Diana Hudson's photo

How is Applitools solving the visual testing automation problem as opposed to platforms using snapshot testing like Selenium Webdriver, Cypress, or WebdriverIO?

Is Applitools cost-effective for small projects?

Angie Jones's photo

Many tools have screenshot capabilities but do not analyze those screenshots for bugs.

Applitools provides visual testing by using AI to mimic the human brain and eye and detect visual differences within your application.

Applitools offers a forever-free account, which contains all of the features needed for small teams and is perfect if you only need to do a hundred or so checks a month.

Also, for qualifying open source projects, the upgraded account is available free of charge.

James Franko's photo

BGC is great! What's next? Any plans for this year?

Deactivated User's photo

How did you get into public speaking Angie, what advice do you have for a beginner like me?

Angie Jones's photo

I started with blogging first. It helped me gain experience and confidence with explaining technical topics.

Next, look into speaking internally at work. Lunch and learn type of vibe where maybe you explain some new tool or technique.

Local meetups are also a great way to begin public speaking. Not as scary as a conference. Record this if you can.

Once you've done these things, you have some experience and hopefully video showing that you're a speaker. This will help when applying to speak at conferences.

Good luck!

Charlie's photo

Can you recommend any resources on how to write and apply for a patent? Is there any tips on selecting patent attorneys/someone to assist in the process?

How can someone move from a developer role to a developer advocate role?

As a developer advocate, what kind of impact do you have inside your organization? Do you contribute to the codebase or do have more of a non-development impact?

Angie Jones's photo

For patents, I'll be giving a talk @ In Streaming Color, so check it out.

To move into Developer Advocacy, you should have a real passion for helping other developers. You can demonstrate this now by writing blog posts, giving talks, making videos, etc.

Once you have this portfolio of content, you can apply for DevRel roles just like you would any other developer job.

Alexis's photo

Why are junior developers considered a burden in their first year in any organization?

Angie Jones's photo

This makes me sad. I'm so sorry you're treated this way.

One thing that companies must realize is that they need to have the support to bring juniors on so that they are guided and mentored.

If you are not finding that within your company, try linking with external developer communities for support.

Margaret Goldman's photo

What's Applitools?

Angie Jones's photo

Applitools provides software testing tools for visual testing such as the Eyes API and the Ultrafast Grid.

I have written about how cool visual testing is...to not only find visual bugs but also as a superset of functional testing.

In a nutshell, take this example. Typical testing tools would verify that all of this text is present. The tests would pass and this would be pushed to prod. Applitools looks at the actual screen to determine if it looks the way it's intended to.

instagram visual bug

Soumaya Ranjan's photo

How to keep your self motivated with among the growing tech developer competition, (imposter syndrome) also how to pick a path in the industry domain that will be having a promising path post-COVID

Angie Jones's photo

I recommend this book, Banish Your Inner Critic, by Denise Jacobs for combatting imposter syndrome.

I'm not sure what the world will look like post-COVID19 but it seems safe to bet on tech. Any tech-related role is promising - especially development.

Madison Ivy's photo

Hi Angie, what motivated you to speak publicly? When was your first stage appearance and how did it go?

Angie Jones's photo

Answer to the public speaking question

My very first public speech was a Commencement Speech at my old high school back in 2016.

That same year, I went on to give my very first public tech talk in Philadelphia. It was great! I haven't stopped yet. :)

Ragu's photo

1 - Do you conduct paid mock interviews for testers/QA ? It would be nice to have a platform like career cup (mock interviews) and leet code (with testing problems) for QAs :)

2 - How can one practice testing without a job & maybe showcase testing skills ? i.e. like newbie front end devs make N websites in N days to showcase their skills.

3 - What is the bare minimum data structures & algorithms automation engineers might need on their jobs ?

Angie Jones's photo

For 1 & 3, watch this video

For #2, I just wrote an article on this very topic. It's going to be published on TechBeacon. If you subscribe to my newsletter, you'll get an email when it's published. I think you'll like it!

Dao Minh Dam's photo

Hi Angie Jones What is the best way to do automation testing on multiple language web application?

2020-05-16 22_14_11-Account Settings β€” WordPress.com.png

Karan Sharma's photo

Angie, nice to meet you! πŸ‘‹ What, according to you, are the best programming languages to learn in 2020?

Angie Jones's photo

Depends on what you want to do.

JavaScript is a great one for 2020. You can do backend (Node.js), frontend (React/Angular/Vue), or mobile (React Native) with this language.

Java is still in high demand for services and backend roles.

Python is great for big data and ML.

The thing about programming is that you can pick up just about any language once you learn the fundamentals of programming in general. So, variables, objects, data structures, decision structures, loops, etc.

Onyinyechukwu Udeobi's photo

Hello, Angie.

I'm a beginner in software development, currently learning HTML and CSS.

What skills would you advice I learn that would be relevant this period and would get me job opportunities too.

Thank you.

Angie Jones's photo

Are you going the frontend dev route? I'd recommend learning JavaScript and then a frontend framework such as React, Vue, or Angular. Good luck!

Alexis's photo

What are the few things a programmer should analyze before starting to code? Especially when they have an opportunity to build a project from scratch.

Angie Jones's photo

Think about why you're creating something. Do you really need to even build this thing?

If so, evaluate the tools available to create it and choose the best ones for the job.

Also, before starting, formalize a plan for maintenance and upkeep.

Steve Skok's photo

Thank you Angie Jones for sharing your knowledge. Good to hear that, Black Girls Code to teach coding workshops to young girls. I am much interested in QA Testing. This tutorial was very informative and good.