Tips For Transitioning To An Agile Approach To Software Development

The agile software development lifecycle is often considered one of the best approaches by industry experts. Studies show that this approach ensures software development teams are 37% faster in delivering products and 16% more productive, which can benefit your company significantly.

Many software development teams follow the traditional waterfall approach, which is fairly straightforward while also being very rigid. With this approach, the design tends to happen all at once up front, with the final product being unveiled at completion.

Such an approach isn’t very suitable for modern markets, especially if you need to develop a complex, large-scale application. Follow along for some tips to help teams that are intimidated by the prospect of transitioning to an agile approach.

6 Tips To Help Your Software Team Become More Agile

1. Make Sure Everyone is Onboard

Agile relies on collaboration between different teams. it will only be successful after a comprehensive implementation involving all departments from executive and management levels to ground teams. That's why it is important to make sure everyone is on board and agrees to adopt the agile approach. Program sponsors must get management commitment in particular to ensure success. Make sure both business and IT sides of your company agree to get involved before working on the transition.

2. Train Staff

The Waterfall and V-Shaped software development approaches don’t require much formal training, but agile is different. It is a little more complex and flexible, which means training can help developers adopt it completely. A few training sessions will ensure your team is familiar with the system and knows how to use it well. It will also ensure your staff doesn’t feel confused or overwhelmed by agile’s more complex workflow. Making the transition easier for a development team ensures your end-product isn’t affected by the change.

3. Maintain Communication

Communication is an important aspect of Agile because different teams working on different phases of the product must remain on the same page. Communication is especially vital when you're transitioning from other systems like Waterfall or V-Shaped to agile.. Teams should work from the same location and report their progress on a consistent schedule to team leaders. This will help you notice any issues with adaption and clogs in the machine early on.

4. Collaboration is Important

Agile places a lot of emphasis on collaboration during software development. Teams that were traditionally isolated from one another must communicate regularly to ensure they move through all phases smoothly. That can only be possible if you encourage a collaborative atmosphere. Agile requires team members to contribute their thoughts, opinions, and ideas to the project. It encourages people from different teams to identify mistakes and share them, which helps improve the quality of the end-product.

5. Create a Plan and Road-Map

Experts recommend creating a plan and road-map for agile adoption. This ensures the process isn't as intimidating for your team. Developers transitioning from Waterfall or other methodologies are accustomed to a rigid, straightforward project structure. Agile is more flexible so creating a plan or road-map can help. This plan will change during the project if needed, but it will still provide some direction.

6. Ensure the Transition is Gradual

Shifting to the agile model abruptly will do more harm than good. A gradual transition gives your team and stakeholders some room to adjust and adapt their work habits accordingly. This also ensures team members don't develop bad habits that may hamper the quality of their work later. 

It is a good idea to bring in an experienced agile coach to guide your team and establish a foundation for the system. This ensures you have a good plan in place and the transition is as smooth as it can be.

At Number8, our philosophy is to empower our clients to produce better software, faster. We are experts in augmenting scrum teams with senior consultants that can help increase team velocity immediately. I f you’re interested in learning more about Number8 and what we do, give us a call at (502) 890-7665, or check out our information page.

SOC 2 – Securing Our Future

May 12, 2020 / in Uncategorized, / by Number8

We have an announcement- number8 is now a SOC 2 compliant organization!

 

logo for AICPA and SOC certification               

Oliver Ray - Roughly a year ago, our management team had a discussion about the impactful investments our organization could make to establish a more secure future for number8. These conversations quickly crystalized into a clearly defined need to adopt and implement a standardized framework for control and oversight activities related to our consulting offering. The management team set out to find the most appropriate audit and control framework for our remote software development consulting services. Through multiple client and prospect interviews we landed on the SOC 2® - SOC for Service Organizations: Trust Services Criteria that has been defined by the American Institute of CPAs (AICPA). The SOC 2 standard creates consistent reporting on controls enacted throughout a service organization that are relevant to security, availability, processing integrity, confidentiality, and privacy. These reports are intended to play an important role in the oversight of an organization. They also establish key processes for internal corporate governance and risk management processes, as well as regulatory oversight. The last key advantage of the SOC 2 standard is the ability to continually enhance different controls to suit the needs of clients. At number8, we value the creativity of helping clients get more work done and reduce the barriers to deliver quality software. Due to the number8 track record of high-quality client interactions, SOC 2 seemed to be the ideal standard for us. There have been no major security incidents in the 11 years number8 has been in operation even as we’ve grown our team to over 200 consultants distributed across 14 countries. Our long-term commitment to our clients and our consultant’s long-term commitment to development has certainly had an impact on our ability to provide secure processes to our clients. More than 50% of number8 consultants have been in some form of a development role for more than 8 years and 75% of our current consultants have been working with the same client for more than 1 year. While working through the preparation of our most recent SOC 2 report, it became clear that the standards and control framework established by the AICPA matched closely with the corporate values defined at number8. We have developed our core values with our clients firmly in mind. Not just as they are today, but how they will evolve in the future. Specifically, 3 of our 8 values were prominent in this decision:
  • Everyone at number8 is Customer Obsessed – we guarantee our client needs are met. We adopt our clients’ products and challenges as our own.
  • We always Embrace Transparency – we ensure all work is completed with the highest degree of quality, honesty and integrity. We seek to own our errors, be realistic about the expectations we set, and express courage in asking difficult questions. We are open about everything we do.
  • Every consultant the comes to number8 Builds for the Future while Prioritizing for the Present - It is imperative for the success of our clients to consider the impact that daily decisions have on the future of their organization. number8 consultants consider future impact; while increasing velocity today.

          -Oliver Ray, Managing Director  

What the Fastest Growing Companies Have in Common

Starting or running a business is a complicated process. It requires commitment, dedication, planning, and a bit of luck. Many businesses fail within the first one or two years, which can cause severe financial loss along with emotional distress. All entrepreneurs dream of having a thriving company, and many reach this goal. Here's a look at six common characteristics that all fast-growing companies share for some inspiration:

  1. Product/Market Fit

Entrepreneurs are always hardworking and driven, but they need a strong product to succeed. Thriving start-ups always have a revolutionary product that fills a vacuum, providing exactly what customers need. They provide must-have products or experience to clients. Sometimes the niche already exists, while at others, a product can create a need. For example, social media giants like Facebook and Twitter existed, but LinkedIn created a niche by being a network for professionals.
  1. Focusing on the Niche

Start-ups must be laser-focused on a niche for success and growth. They don’t have the manpower or resources to tackle a large market. Focusing on a niche allows companies to specialize in a specific category and fine-tune their products or services. For example, a web development company for small businesses can use a highly customized approach after comprehensive research. This might keep their customer pool small, but it helps companies develop a distinctive identity. Specializing in a niche has long-term benefits as you generate enough funds for expansion later. The cosmetics company Huda Beauty is a good example of this. It started out selling high-quality fake lashes and established such a strong niche presence that their products set a standard for everyone else. Today, this company has expanded, including other cosmetic items like eye shadows, foundations, lipsticks, etc.
  1. Don’t Disregard Processes that Aren’t Scalable

Modern entrepreneurs can get advice from multiple sources. One of the most common bits of advice is, “keep things scalable.” While this is sound advice, you still need to focus on specific processes that may not be scalable as companies sometimes need to invest in these too. It helps establish a strong presence while having a lasting impression on a customer’s mind. For example, some start-ups will coddle customers at first with a lot of personal attention. They will offer one-on-one consultations, discounts, accelerated project timelines, etc. None of this is scalable, but it can help companies develop a reputation for excellent customer care. You can roll back these processes slowly while maintaining sound basic customer care systems for long-term benefits.
  1. Constant Focus on Growth – Timely Growth

It isn't surprising that fast-growing companies are focused on growth, but not all of it can cause large-scale disruption. Most successful start-ups have a meticulous process in place for expansion. These companies plan a slow, relentless march towards growth until it becomes almost inevitable. For example, Uber has a precise expansion plan for opening up in new cities. They send feelers out, get to know the new market, connect with drivers as well as customers, before developing a unique plan for new markets. They make sure it is primed for Uber’s network before launching operations. This constant, unrelenting march drives long-term success.
  1. Do Things Differently

Sometimes fast-growing companies succeed by shunning traditional practices. They don't do this arbitrarily but put some thought and research behind it. They look at established practices carefully, identifying their weaknesses before finding more efficient alternatives. For example, Yelp is such a success because it stayed away from paid reviews or expert testimonies. It relied on 100% community feedback, which worked spectacularly. Yelp became more trustworthy than any other review platform just a few years after its launch. Establishing a fast-growing company isn't easy, but it can be done. Just maintain focus and ensure you have the right product.
  1. Don’t Be Afraid to Outsource

Fast growing companies tend to have a clear sense of their core competencies. Knowing their strengths and weaknesses gives them an edge to take advantage of outsourcing options while they grow. There are many business functions that may be better handled by a third party, especially during the early phase of a company’s growth. For example, accounting, billing, software development and IT support are all common functions that fast growing company’s may choose to outsource to free up time and resources so they can best focus on the priorities at hand. As an information technology company with many years of experience, we’ve helped hundreds of clients leverage technology to become more efficient and increase profits. Interested in learning more? Let’s connect. Send us an email or give us a call and we can get the conversation started.  

5 Stakeholder Questions To Ask Before Starting the Software Development Process

Software development is an intricate process that requires skill, planning and team effort. There are several stakeholders involved in the project, from company executives to various departments within the company. It isn't possible to satisfy all of them completely, but you can take their concerns into account before working on the project by asking the right questions. Doing so can help you understand their priorities and plan the development process accordingly. Here's a list of 5 questions to ask before starting a software development process:

  1. What is the Product?

Projects tend to get out of hand if you don't have a clear vision in mind. Software developers need to understand what the end product should look like before they even start planning for it. For example, does the company want an app that will help users find the best online deals? Does it want a software program for its HR department? Stakeholders can provide a list of features or ideas for the end product to make things easier for a development team. If there's any dispute about the final product, this will be the best time to resolve it. Make sure everyone is on the same page before proceeding.
  1. What is Not a Part of the Product?

Developers can sometimes go overboard and add features or elements that aren’t necessary. That happens if they don’t know what should be excluded from the final product. For example, if a website is only delivering to the US, there’s no need to include a feature to convert prices to other currencies. In many cases, stakeholders assume their development team is going to deliver something, but the latter is unaware of it. It is essential to establish what you will and won't deliver.
  1. What is a Successful Product?

Software programs are tools designed to achieve a specific goal or purpose. A company creates a website if they want to establish a presence online. They design an app if they want to build a robust and long-term customer base. They develop a software application to make daily processes easier. If the product fulfills these goals, it is considered successful. The end goal isn't to deliver a good product; it is to provide a product that succeeds in the market. There's a clear difference between these two goals. For example, a website can be beautiful and functional but still not provide all the services the target audience needs. Stakeholders should define what a successful product means to them at the start of the project.
  1. Do We Have a Single Point of Communication?

This is one of the most challenging aspects of project management. The project starts with one team and one client, but eventually, a large number of people start becoming part of the process. The IT guy must approve one aspect of the design, the other should please the marketing expert, and so on. If these people start offering suggestions or requesting changes, the project can quickly get out of control. It is crucial to establish a single point of communication between stakeholders, clients, and development teams. You can maintain a smooth flow of information while keeping track of numerous requests.
  1. What are the Potential Roadblocks or Problems?

No one likes to discuss problems before they work on a project, but you need to address it. Gather all stakeholders together and ask them about possible hurdles. Can the project run out of money? What happens if some temporary contractors don't live up to expectations? What if the client changes their mind in the middle of the project? If you know about possible hurdles, you can develop systems to counteract them. These questions will help a team start their project on a firm foundation. Don't hesitate to ask questions to stakeholders; the answers will help improve the quality of your end product. At Number8, our philosophy is to empower our clients to produce better software, faster. We are experts in augmenting scrum teams with senior consultants that can help increase team velocity immediately. If you’re interested in learning more about Number8 and what we do, give us a call at (502) 890-7665, or check out our information page.  

Outsourcing IT? What to Look For in an IT Outsourcing Agency

Outsourcing is a great way to get things done at an affordable cost and avoid the hassle of adding more people to your staff. For example, you can delegate all of your IT maintenance requirements to an external IT firm instead of creating a new department for it in-house. There are two opinions on outsourcing; some people believe it's a great way to get the job done while others worry that outsourcing compromises quality and security. The quality of service depends on the competence of the firm you hire. Here are some things you should look for in an IT outsourcing agency:

  1. Substantial Industry Experience

Look at the amount of experience the company has before hiring them. Experienced establishments know how to interact with customers, understand priorities, and have a proven system in place. They are better equipped to deal with emergencies, unexpected delays, and last-minute changes. You can ask the company about their experience directly or look at the information provided on their website.
  1. Good Company Culture

IT companies often struggle to maintain a good company culture or work ethic, which can compromise the quality of service provided. Do some research into the company’s background to understand if their culture aligns with yours. This can be especially beneficial if you intend to maintain a long-term relationship with the outsourcing partner.
  1. Reputable Past Clients

Looking at the past clients and getting in touch with them can tell you a lot about the company. Ask the outsource partner to provide some referrals so you can discuss the quality of services provided with someone who has already worked with the company. Past clients will offer unbiased and straightforward information about the company. They will point out flaws and habits that you need to be wary of while highlighting the right qualities.
  1. Good Infrastructure and Technology

An IT company should have good infrastructure and technology. For example, you won't want support from an IT company that still uses outdated technology and software programs. You won't want to share vital information with an establishment that doesn't have a robust and current security system in place. Make sure the company uses the best and most current technology so you can get the most consistent results.
  1. Strong Customer Support System

A reliable customer support system is the heart and soul of any outsourcing partner. Look for a company that spends time and effort on their customer support. There are many ways to identify a proper set-up; look for the characteristics mentioned below:
  • The partner offers multiple ways to get in touch. You can call, message, email, live chat, etc.
  • They provide a dedicated expert as your point of communication. You can go to this expert for all of your concerns.
  • They offer 24/7 support for emergencies. For example, IT maintenance and repair service will respond promptly if your system crashes, even if it is on a Sunday.
Good customer support is one of the most important characteristics to look for in an outsourcing partner.
  1. Wide Range of Services

Keeping track of multiple vendors and outsource partners is a drain on resources, which is why you should look for a company that can handle all of your IT needs. They should be able to provide on-site services, remote services, conduct new installations, dispose of old hardware, etc. If you can find a company that does everything you need under one roof without compromising quality, hire them. At Number8, we help businesses optimize their operations with onshore, nearshore, and offshore outsourcing. Our teams–both foreign and domestic– provide effective communication and service that allow your business to grow at a rate that keeps up with your market. If you’re interested in learning more about Number8 and what we do, give us a call at (502) 890-7665, or check out our information page here!

“Automated QA: Save time, use a web calendar handler!”

Number8's very own Derick Arzu was recently published on Medium. Read the article on automated QA processes below.

Text boxes, check boxes, radio buttons, and other elements of forms are fairly simple to deal with when it comes to developing UI functional tests for a web application. But what happens when you want to write a test that verifies that the UI for a web calendar is working?

You are probably thinking that it can be easily achieved with a couple of clicks and validations, which is not only true but also the approach that led to the idea of a handler.

Before you discover how to make your automated QA team very happy, here are some reasons why writing a simple function or just a segment of code that deals with ONE specific calendar is not as scalable. Imagine you are a QA Developer at a company who is developing the websites for airlines A and B and your team is requested to create the automated test suites. Sounds quite easy, you will use the same code in both projects, nothing will need to be changed; until someone shows you the designs of the two web calendars each airline uses in their website.

Beginning with the obvious differences, airline A uses two windows while airline B uses only one; that surely represents a significant change in the code of that first approach. Another difference you might not have noticed is that airline B has a dropdown to change the year of the calendar, so that would mean a slight change in the method used to get the text of the displayed year. Those are two visual differences that will affect the way your bot interacts with the calendar and the DOM will surely surprise you with more.

Now that you are interested, the coding begins!

This handler was implemented in Node.js and uses WebdriverIO as the test framework that interacts with the browser.

You will find out that the framework has two functions ($ and $$) to fetch web elements. However, a hierarchy of classes will be created to manipulate elements, later on you will learn this is so that the handler can easily be able to cover many web calendar designs.

The main class is Element. Here is where, the method to obtain the fetch function is implemented, it has two parameters:

    1. selectorObject (required) which refers to an object with two properties; the first named selector , is a string that specifies the selector that will be used to fetch the element. The second is index, which is an integer that must be assigned to the object if the fetch result wants to be treated as a single element and not as an array of elements.
    2. additionalProperties (optional) is an object with any property that wants to be added to the fetch result. The subclasses of the hierarchy use this to manage how some data is obtained from the web elements, you will learn this later on.

Read More...

4 Powerful Tips to Improve Communication at Work

November 7, 2019 / in Job Happiness, / by number8

Communication is one of key pillars for any relationship. It could be a personal relationship, a friendship or a business relationship. People sometimes think that rules for personal communication don´t apply to a work environment but this is not true.  Every human has needs, emotions, hopes, values and dreams. And each person faces situations in their personal life that may sometimes impact job performance. Staff turnover is one of the main challenges many companies face.  While employees come and go, many are less likely to leave if they are in an environment where they feel respected, rewarded, safe and comfortable.  People tend to be happier in work environments where they are confident enough to speak to coworkers and managers about their lives – this includes work related topics and personal ones too. This is why communication is so important in the work environment, both among employees in the office and for those that work remotely. While maintaining good communication with employees who work together in the same place each day may seem straightforward, it is sometimes less obvious how to improve communication with those working off site. As an agency that specializes in connecting nearshore technical talent with U.S. companies, we’ve got some worthwhile insights into this challenge. Follow along for helpful tips to improve work communication, including communication between onshore and offshore workers.

Four Helpful Tips To Help You Improve Communication At Work

1. Employees are human beings, not numbers or metrics.

Many companies focus on growth, revenue and developing new products/services or improving existing ones. Sometimes by doing this, employees start to feel more like numbers, or pawns in a game of chess. When dealing with human resources, emotions play an important role. Employees are much less likely to make sacrifices for companies that make them feel like a cog in a wheel. It is tough to go the extra mile for a boss that doesn’t seem to take interest or care about anything but the bottom line. According to Dale Carnegie, author of the award-winning classic: “How to Win Friends and Influence People,” the main thing people care about in life is themselves. Every person wants to feel important, valued and appreciated. Henry Ford surely recognized this back in 1914 when he started paying his employees $5 a day. (This was a big salary increase.) He also reduced shifts from 9 hours a day to 8. By doing this Ford quickly solved a high staff turnover problem that his company was experiencing. This led to notable increases in production. If a company can make its employees feel important, feel that their job matters and that they are important assets for the company, they are far more likely to do the extra work needed to go from good to great, and to take care of the company as if it was their own. While a motivated employee will communicate better, it is an employer’s responsibility to make sure employees know they are free to express what is on their mind.

2. Body Language Matters.

Over 50% of the things we say are non-verbal. Given this, learning body language is an important part of developing more effective communication. If you are a manager, it is essential that you practice your body language skills so that when you speak with your employees you can transmit your ideas in the best possible way and avoid any misunderstandings of what you are trying to convey. Things like maintaining an upright posture, making eye contact during conversation and keeping your chin up will radiate confidence and those around you will see you with respect. Besides using body language to communicate well at work, it’s also important to understand body language signals in others. This might be especially important when dealing with offshore employees that normally communicate through apps like Skype or Zoom.  Knowing how to identify body language signals like face and eye gestures and tone of voice will enable you to read between the lines of the message that a coworker wants to transmit.

3. Make Yourself Available to your Co-Workers.

One of the easiest ways to make yourself accessible to coworkers is to simply tell them that you are available. People want to know they can count on you and the only way they will know this is if you communicate it. People want to know that their colleagues are people that can listen to them and understand what is going on. Sometimes it may be difficult for people to communicate issues directly, especially with a manager. In these times, it can be useful to have a way for people to anonymously ask questions or even express complaints. Having a channel of communication that enables people who are too uncomfortable or shy to speak directly to leaders is a great way for a company to stay informed about situations they may otherwise not know about.

4. Share Something in Common.

Many of the best managers are comfortable sharing something about their personal lives with their coworkers. They might participate in a fun office outing or simply take an interest in the lives of their employees. Something as simple as remembering a birthday can make an enormous difference to a person’s morale at work. This type of leader tends to be one that can talk about any topic with employees, not just work-related things. Often these more informal conversations help to build trust and work satisfaction. They also improve overall communication by making people feel more comfortable and secure. Take the time to develop relationships with your coworkers and create a trusting environment for people to open up to you. You will likely be pleasantly surprised by the results.

5 Must See Places When Traveling To Peru

September 19, 2019 / in Blog, Peru, / by number8

For the nature lover at heart, Peru features many landscapes to be explored. From jungles and deserts, to mountains and beaches, the South American country is rich in archaeological sites and biodiversity. It's also commonly referred to as a bird watcher's paradise, with over 1,800 species of birds across the country. Additionally, both the colonial city of Cusco and the capital city of Lima are full of night life and delicious local dishes. However, if you're looking for something a little off the beaten path don't miss these 5 sites:

1. Machu Picchu

Considered one of the 7 Wonders of the World and the post popular tourist destination in all of Peru, Machu Picchu sits atop the Andes Mountains. Built in 1450 A.D. these ancient Inca ruins were home to more than 500 South American Indians. While there are many ways one can access Machu Picchu, the Inca trail is the most famous. It takes 4 days of hiking and features a stone stairway known as the "Stairs of Death."

2. The Amazon

The Peruvian Amazon is commonly described as the most biological diverse section of the Amazon Jungle and takes up 60% of Peru. It's also the 4th largest rain forest in the world and is teeming with exotic animals. Whats more, the Amazon Basin is part of the largest jungle in the world and home to many indigenous tribes, making it one of the most unique places to visit in Peru.

3. Huascaran National Park

Known as the highest tropical mountain range in the world, this protected area is home to many snowy peaks, glaciers and lagoons. Though Huascaran National Park has many hidden gems, the most popular hiking destination is Laguna 69, a breathtaking crystal lake and 1 day trek.

4. Paracas National Reserve

Paracas National Reserve is the only marine protected area in Peru. It's vast landscapes feature a striking coastal desert, dramatic shoreline, as well as many cliffs and rock formations. Known for it's wildlife, travelers are likely to see sea lions, seals, penguins, and birds galore. Peru mountain

5. Rainbow Mountain

Officially named Vinicunca, Rainbow Mountain is a colorful hillside of the Andes. It is the most recent tourist spot on this list as the mountain's colors actually remained hidden until 2016 when snow melted away to reveal a rainbow. The vivid colors are formed by weathering and sedimentary mineral layers exposed by erosion. At Number8, our development team travels throughout Peru for both business and pleasure.  If you are interested in learning more about our company, and what we do in Peru, give us a call at (502) 890-7665 today!

GET STARTED TODAY

We’d Love To Schedule A Time To Talk.

Provide your information to talk with a number8 Relationship Manager about your development needs today and feel what it’s like to be listened to before being sold a solution.

  • This field is for validation purposes and should be left unchanged.

We’re Everywhere

number8’s onshore office is located in Louisville, Kentucky where our Account and Relationship Managers work hard to provide all of our clients with exceptional customer service. We also have consultant offices located in Escazú, Costa Rica and San Pedro Sula, Honduras that give us a strong local presence allowing for top-level recruitment, technical training and low employee turnover.

Our Locations