BDD & TDD

BDD & TDD

BDD & TDD go hand in hand to develop quality software which matters.   BDD: collaborative requirements discovery practice, helps create the right features. 3 amigo sessions: happens 2-3 weeks before feature is developed: – 3 amigos: developer, tester, product owner – For story perform example mapping: create rules, examples for each rules, questions Use examples to illustrage rules / acceptance criteria – Each session should be about 30 mins – Gherkin can be written by 3 amigos but can…

Read More Read More

2019 – Test Optimization

2019 – Test Optimization

Improving build time requires optimizing tests which can achieved with modifying existing tests or migrating to modern framework or newer version which provides better performance.   What are some ways we can optimize tests written in Java & JS:   Java: Junits: Run in parallel: https://examples.javacodegeeks.com/core-java/junit/junit-run-tests-in-parallel/ – Use parallelcomputer class – Use surefire plugin https://www.baeldung.com/maven-junit-parallel-tests BDD using cucumber?: Parallel execution is supported natively by cucumber: 4.0 https://cucumber.io/blog/announcing-cucumber-jvm-4-0-0/ https://github.com/cucumber/docs.cucumber.io/issues/298 Spring boot testing: https://reflectoring.io/spring-boot-web-controller-test/ https://github.com/thombergs/code-examples/tree/master/spring-boot/spring-boot-testing JS: Unit tests: Existing frameworks (jasmine, karma)…

Read More Read More

AWS SysOps Certification

AWS SysOps Certification

AWS SysOps Associate Certification  Exam Content: Monitoring and Reporting 22% High Availability 8% Deployment and Provisioning 14% Storage and Data Management 12% Security and Compliance 18% Networking 14% Automation and Optimization 12%   https://s3.amazonaws.com/mydabba/AWS-Certified-SysOps-Slides.pdf        

Security+

Security+

CompTA Security+ certification is essential for everyone in IT field. It provides baseline of knowledge required to design with security in mind. Below are links to help you prepare for this certification   CompTA Security+ Objective Recommended to have CompTA Network+ cleared though not required CompTA Network+ Notes Exam study notes Security+ Study guide by Darril Gibson    

Maven

Maven

Maven basics:   Phase -> goals -> defined in Plugin Lifecycle is sequence of Phases. Each Phase executes sequentially Phase is made-up of Plugin goals A Plugin provides a set of goals that can be executed   Maven is based on build lifecycle concept: default, clean, site Each Build Lifecycle is Made Up of Phases   Reference: SOF Link with more explanation and links

Top tech blogs

Top tech blogs

Here is what some blogging sites state there favorite tech blogs: top-software-development-blogs-2017 the-5-best-tech-blogs-or-newsletters-you-should-subscribe-to    

Microservices

Microservices

Testing Microservices Architecture <DRAFT>   Microservice Arch: http://blog.arungupta.me/microservice-design-patterns/   Mastering Caos (Netflix) Summary: Looking at challenges with microservices and comparing each with an area in Biology Challenges: Dependency, Scale, Variance, Change Dependency: Intra-service requests, Client libraries, Data persistence, Infrastructure Cascading failure with 1 failing service Solution: Hystrix Netflix fit test framwork Identify critical microservices Client Libraries: can take up heap, transitive dip failures Solution: simplified client lib Persistance: consistency vs. availability? Netflix choose eventual consistency (Casandra) Infrastructure: Failover / failure…

Read More Read More

Javascript

Javascript

JS is single threaded and uses callback queue, but there is lot more to it than that. Lets take quick dive into JS and popular frameworks.