Bytelion is an Official Partner for Baltimore Innovation Week 2019

By Agile, Innovators, Leadership, Product Design, StartupNo Comments

Bytelion and Baltimore Innovation Week

Bytelion has always been proud to call the Greater Baltimore area our home.  Baltimore is brimming with leading institutions, anchored by The Johns Hopkins University (JHU) and University of Maryland Baltimore County (UMBC). The city proudly represents some of the top creatives minds and a growing cultural scene. Byte.lion is proud to support startups and established corporations in Greater Baltimore, as we are greatly invested in seeing the city flourish as a technology hotbed. 

We are excited to announce that we are an official partner for Baltimore Innovation Week 2019 (BIW19). Presented by the Emerging Technology Centers (ETC), BIW19 is an opportunity for leading organizations to celebrate and support Greater Baltimore’s burgeoning tech ecosystem.

Who is Presenting?

Our Head of User Experience, Marc Hausle, will lead a free session on Lean Product Design for Startups during the creative & media track day of BIW19. With Marc’s experience overseeing user experience at Byte.lion and leading teams at Google & Apple, he noticed that startups are stuck. As a founder, one may have a great idea and want to launch as quickly as possible, but time and financial constraints hold them back. Our company is rooted in software entrepreneurship, and thrives on driving value and efficiency to iterate rapidly and reduce capital inefficiencies. 

On Tuesday, October 8 from 4:00 – 6:00 PM at Clark Burger Fells Point, Marc will provide his insights on how you can design a software product that drives user engagement in a shortened time period and without hefty financial commitments, while indulging in burgers and beer! You will have the opportunity to meet some of Greater Baltimore’s leading founders, entrepreneurs, designers, and c-suite executives.

Spots are limited, so please register now to ensure yummy drinks and burgers!

Bytelion decided to become an official partner for BIW19 because we believe that the Greater Baltimore area will continue to thrive in entrepreneurship and innovation. With the amount of tech talent coming out of JHU and UMBC, as well as the massive incubators, accelerators and coworking spaces, Baltimore is poised to be the best! We are in a prime position to continue to support startups and large corporations in an effort to spearhead growth in our area.

Bytelion is more than a quickly growing, custom software development firm. We are a focused team of creatives, techies and innovators that transforms ideas into beautifully designed mobile and web products. Using industry best practices, our team is dedicated to researching, designing and developing products that deliver world-class user experiences.

Our team looks forward to meeting you on October 8th during a night of great food, networking and experiential learning!

How I Passed Scrum Master Certification

By Agile, DevelopmentNo Comments

Work in progress as of 3 June 2018… please don’t judge yet

Bother to become scrum certified with First and foremost, I believe in self reliance and not needing to go through “a course”.  Secondly, going through a certification process forces you to get uncomfortable and challenge what you know.  If you aren’t familiar with vs scrum alliance, please check out our previous article to see why I chose

I have been through training years ago and ran several projects with ease.  I sat down and took this assessment after spending $150.

My Results

Name PSM I
Description Professional Scrum Master I Assessment

Thank you for taking the PSM I Assessment. We regret that you did not receive the minimum passing score of 85%. An e-mail contining your score will be sent to you.

Your result has been recorded and you can safely close your browser or return to by clicking the button below.

Scrum on, Ken Schwaber

57 points scored (or 71.3%) out of 80 maximum points

(a score of 85.0% or greater is needed to pass this test)

From Failure To Success

As a minor perfectionist, my first reaction was to go through the normal steps of failing.  Blame, sadness, self loathing, angry, and then acceptance.  This cycle took about 2 minutes and now I have to solve it.  But what is the best way to do that?  Read.

All Hail Chandini Paterson!

I have never met Chandini Paterson per se, but I loved one of his posts where he outlined what he studied to pass the certification test in a community forum.  I am going to outline those steps and put some time to them.  His study technique was as follows:

– Reading the Scrum Guide and understanding the concepts
– Taking the Scrum Open assessments.

Time Boxing Prep Work – The Plan

One of the most important things you can do is put a plan in place to execute.  Following the book “Deep Work”, am going to block off every morning for 90 minutes a day starting at 5am.  In 2 weeks time, I should be able to get in 10×1.5 minutes = 15 hours of prep time.  This seems a little extreme, but getting this certification would make that all the more worthwhile. The other options is to spend 4 hours commuting back and forth over two 9 hour days for a total of 22 hours.

The Scrum Guide

You can download it from either Bytelion or

Total Pages = 19.  Total read time = ?


Why Do I Need A QA Engineer?

By Agile, Development, Innovators, Startup, TestingNo Comments


Why is a Quality Assurance engineer necessary for development of software? Couldn’t I simply get my developers to QA/review their own work? Could I get get developers to review each other’s work? These are all questions that I have come across at some point or other from multiple people.

Before I answer, let’s briefly summarize what QA is:

What is QA?

QA is the analysis of functionality and overall appearance of your site / app. This can include (but is not limited to): Cross-browser testing, screen resolution compatibility testing, grammar, spelling, functionality.. the list goes on. QA is ideally approached from multiple angles.

When testing a simple ‘contact us’ form, the QA engineer would ensure that the email field ensures that a valid email address is entered, the name fields do not accept numbers, the name fields do not accept special characters, ensuring fields have limits so malicious users cannot overwhelm your system by entering large amounts of characters, etc.

QA Responsibilities

A QA engineer’s responsibility is to review each feature before it is released, suggest edits to issues and approve code before it reaches the product owner. Therefore, not only is the entire site under the QA engineer’s watchful eye, each part of the site is analysed during its creation.

Why is QA Necessary For Development?

As you can see above, the responsibilities for QA are laborious. A dedicated amount of time by someone who knows your system is needed. Not only is QA needed for each release, regular testing across your site is critical to catch issues that may affect it from external sources.
Example: Still running flash player on your site? Browsers are discontinuing support since it is considered deprecated technology. Your QA Engineer will (/would) know this.


Can Developers QA Their Own Work?

The QA engineer should be a consistent team member, part of daily scrums and involved in feature development. Developers however,are assigned a particular module of the whole system and aren’t truly aware of the system as a whole. Not only is development typically modular, a developer has a completely different mindset and thought process. He/she may not consider all the scenarios a tester would consider.
They can definitely code review their peers but QA is a different game entirely.


Want to find out more about software development practices? Check out our Blog!
Bytelion is a full service software development firm. Check out the rest of or contact us to find out more.

Upgrade Python to support Django 2.0

Upgrading Python To Support Django 2.0

By Agile, Development, DevOps, Django, Python

Across the land, there are many developers, dev ops, and software delivery managers are terrified of the big move from Python 2.7 to Python 3.6 (at the time of writing this).  You can see all of the versions from the beginning of time.    I am going to walk you through why it is happening, how to plan, and more importantly, how to upgrade your infrastructure in a systematic manner.


  • There are multiple developers on the team
  • There are multiple Django instances in your organization

Why move? Django

The answer is pretty easy… Django, the core web platform programming framework associated with the Python  programming language won’t support future releases in Python 2.7 any more. In fact, the Django 1.11.x series is the last to support Python 2.7.

Django 2.0 supports Python 3.4, 3.5, and 3.6. We highly recommend and only officially support the latest release of each series.

Note according to PEP 373, Python 2.7 is currently expected to remain supported by the core development team (receiving security updates and other bug fixes) until at least 2020 (10 years after its initial release, compared to the more typical support period of 18–24 months).

How to Plan?

When it comes time to plan for an event like this, it is important that you identify the critical components of your infrastructure.

Sample User Story

As a developer, would like to have a complete list of technical assets that use Python so I can generate an upgrade plan that reduces risk to the company.

Acceptance Criteria: Generate a list of the following assets which include:

  • Your Django platforms to include, dev, test, and production instances.
  • Other internal platforms ( AWS lambdas, small flask instances)
  • External/Internal libraries
  • Cronjob or schedule tasks running Python
  • Continuous Integration systems that build  (ie Jenkins)
  • Unit testing
  • QA regression testing scenarios
  • Code repositories
  • Your development team list (each one of them will have to complete upgrades)

Step 1 – Select Your First System

Pick your first system to do an end to end test.  If you only have one single platform of Django, then… you are done.  We recommend that you clone your dev instance for your first test.  If you don’t have a dev instance, stop reading this and make sure that you do have a dev, test and production version of your platform!

If you have multiple systems, we recommend that you select one that is much smaller in scope and will have as little impact on your operations as possible.

Sample User Story:

As a developer, I would like to select my first computing environment to upgrade Python on so I can minimize the impact on our operations.

Acceptance Criteria:

  • You selected one of the least impactful systems in your eco-systems
  • You clone a working environment that it identical to this instance.
  • You notify the team of what you are doing and discuss any impacts that your testing might have with them.

Step 2 – Start your documentation

If you have other people on the team, you will want to make sure that you can guide them along the path of upgrading their computing environments and be able to discuss problems that you had.

Sample User Story:

As a developer, I would like to document the upgrade process steps that  I took so I can help others on the team upgrade their computing environments to Python 3.6 with Django.

Acceptance Criteria:

  • Document your finding in confluence.

Step 3 – Review external dependencies

Not all pypi libraries are Python 3.6.3 compliant.  Many are only built on Python 2.7.  The good news however, is that most major libraries have been ported to 3.6.x.  The complete list of PyPi libraries per version is listed here.

Individual Library Inspections

As a developer, you can see the details of any pip installed library by calling this command: pip show LIBRARYNAME –verbose


(bytelion_env)~>pip show requests –verbose
Name: requests
Version: 2.13.0
Summary: Python HTTP for Humans.
Author: Kenneth Reitz
License: Apache 2.0
Location: /Users/terrancemacgregor/.virtualenvs/bytelion_env/lib/python2.7/site-packages
Metadata-Version: 2.0
Installer: pip
Development Status :: 5 – Production/Stable
Intended Audience :: Developers
Natural Language :: English
License :: OSI Approved :: Apache Software License
Programming Language :: Python
Programming Language :: Python :: 2.6
Programming Language :: Python :: 2.7
Programming Language :: Python :: 3
Programming Language :: Python :: 3.3
Programming Language :: Python :: 3.4
Programming Language :: Python :: 3.5
Programming Language :: Python :: 3.6
Programming Language :: Python :: Implementation :: CPython
Programming Language :: Python :: Implementation :: PyPy

Sample User Story

As a developer, I would like to know which PyPi libraries are not supported by my current system so I can determine a migration strategy.

Acceptance Criteria

  • List is generated and shared with the team
  • For each library that is not supported, identify an alternative.


Remember the 80/20 rule?

Many of the upgrades from 2.7 to 3.6 can be safely automated, some other changes (notably those associated with Unicode handling) may require careful consideration, and preferably robust automated regression test suites, to migrate effectively.


Upgrading Server Code


Programming Language :: Python

Here is a list of what some other people experienced:

How can I move my difficult development team to Agile?

By Agile3 Comments

How can I transition my team to Agile?

Development teams can be difficult and incredibly frustrating. Some developers believe that scrum is micromanagement and does not value transparency. Others are stuck in their ways and don’t want to change. Some development teams have had terrible agile leadership, dysfunctional project execution and therefore are far less than impressed with the entire Agile experience.

In this post, I will explain how you can guide the most difficult people through the process and make them a believer. Please note, each team is unique, which means each team requires a unique approach. If you want more information about Agile vs. Waterfall method, check out our previous post: Corporations Moving to Agile.


Become a self-taught expert

Before walking your team down the path of agile, make sure you are well read with some core agile development books. For a quick and insightful overview of the scrum process, I recommend Scrum: A Breathtakingly Brief and Agile Introduction.Team members can finish this book in under an hour. Youtube has a plethora of amazing videos like this one from Atlassian. If you prefer to read through the web, we highly recommend Mountain Goat Software (You are welcome Michael Cohn!). We have relied on their interpretation of agile roles and techniques the most. To understand agile, it is a good idea to see both sides of the story, Google “Agile sucks” or “why we quit scrum” to understand the objections.

  • Pros:  Simple, easy, low-cost.
  • Cons: Won’t pick up on many of the nuances that only real experience provides.

Demonstrate Leadership

Sit down with your team and discuss exactly why you are moving to agile. Explain how the process works, what the benefits are, and listen to their problems and concerns. Bring up your research from why “agile sucks” early on so they are aware that you understand how they might feel. You don’t have to be a developer to command the respect of your troops. You do, however, have to understand their point of view to be able to work with them. Believe it or not, software development, like product fit, involves human empathy. So try walking in someone else’s shoes.

  • Pros: Lots!
  • Cons: None. Time spent on this pays off in the (very!) near future.


Get Help: Hire An Agile Coach

There is an industry of Agile coaches that will work with your organization to spot problems, collaborate with product managers to “modify” some less desirable behaviors. Then turn the pressure on for development teams to get the most out of them.  Agile coaches have varying degrees of expertise, so you must be careful in your vetting process.  One of the best we have found is the team at Project Cooks.


Get Help: Hands on Agile Hybrid Training

If you want to train your development team, another reliable option is to have your team co-locate with a software services company that has a mixture of software development and agile training. This emerging model can be found in New York City’s Pivotal Labs. Your team works with theirs for about four months while building a product using Agile techniques. At the end of the four months, your team is capable of working out of your offices with a full and practical understanding of Agile development. Bytelion is currently implementing this model in Baltimore/Carroll County Maryland.

  • Pros: Your team works side by side with Agile experts.
  • Cons: Expensive model, Team must travel.

screen-shot-2017-09-05-at-1-31-32-pmFire Your Way Out

Let’s face it; sometimes you are going to work with some pretty difficult people. No matter what you do, they will not change. There are times that you won’t be recognized as a strong leader.  No matter how effective you are as a product owner, there can be an impediment to the relationship that will make you less efficient.  If you have either of these scenarios, it is best to cut your losses and find the right people who will fit your organization and culture of openness and accountability.

  • Pros: Confidence that you have hired the right team.
  • Cons: You will have to shed people with domain knowledge and invest in new people.


Formal Certification

You may want to consider a Scrum workshop to certify all members of your organization. These can be pretty expensive, but the benefits should far outweigh the cost. You can find team workshops/courses at and For more details the two, please check out our comparison.

  • Pros: All principles are covered, team has the same standard
  • Cons: Knowledge may be superficial,  time away from the office.


Final Thoughts:

Having the right Agile team and culture is critical to your product line. We hope that these options are helpful to you as you move forward. As always, nothing beats engaging at networking events to meet other leaders including conferences and events to hear how they solved their problems.

If you were curious about Bytelion’s agile development process, we are happy to chat.
Feel free to email us at


Why building an admin panel should be in your first sprint

By Agile, DevelopmentOne Comment

Overlooking small aspects is the nature of starting a software development project. From how much time a feature will take to the Mythical Man Month Mistake; eventually a team runs into all of these. One area that’s commonly forgotten and can make a big difference in the performance of an application is the admin panel. In my opinion, few features are as important and useful as an admin panel. More often than not, developers and project managers don’t take the time to plan, design, and implement. Often, projects can run over because of this. With a little up front work, you can cut this friction down dramatically and help your company drive revenue faster.


Insight into user behavior:

What is an admin panel you may ask? It’s an admin-specific platform in an application that allows for access and manipulation of data within the user interface of the site. The admin panel can help user-related functions, such as providing insight into user behavior, dealing with profiles that violate the site’s terms and conditions, and tracking transactions. But you should know that admin sites are not just limited to user-related tasks.

A well-built admin panel can be turned into a dashboard to either display business metrics and analytics without the viewer writing a single bit of code, or to export weekly data which can be used to create reports. Add to the list that any QA member of the team will love an admin panel for the ease it gives them in verifying data, quickly entering or deleting data, and determining if an issue is in the frontend or the backend. Functioning without an admin panel can lead to a lack of insight into your data, and add greater difficulty for the testing team.


Examples of Web Frameworks

Most web frameworks have plugin libraries that make the creation of an admin panel much easier. For example, PHP/Laravel has LaraAdmin (, Ruby/Rails has ActiveAdmin ( my favorite backend framework, Django (, has an admin panel by default!

this VVVV is a pic of a dashboard modification of the Django admin panel to provide some analytical functionality

This is a pic of a dashboard modification of the Django admin panel to provide some analytical functionality


While out-of-the-box admin panels are wonderful, we have to work around some limitations. Most plug-and-play admin panels accomplish two goals: to manipulate data and to display data. These are crucial parts of any data-driven apps.

Can we push it further? Yes we can! Your customer doesn’t need to see a graph of quarterly earnings or the number of visits of repeat customers, but I bet you do.

How about the average purchase per transaction? If these metrics appeal to you, I suggest expanding the limited admin panel functionality to include business analytics. There are other sites out there that can build admin panels, but they may not have the custom features your team needs.

Final Thoughts:

A well-built admin panel will increase productivity, give insight into data, and help you catch bugs; adding up to greater revenue for your business. By investing in the admin panel early, you are going to build your application much more efficiently and allow your team to do what they need to make your business grow.

Do you need help building our your next admin control panel? Our expert backend teams are happy to help! Contact us at

Need to build out your Agile Team? Think Veterans

By AgileNo Comments

As a product manager, when I go to networking events I often get asked, “What did you do in the past?” Most people are not surprised when I tell them I served eight years in the Marine Corps. What is surprising for many is when they find out I served in the infantry. Many people have a preconceived idea that the infantry does not provide transferable skills to the tech world. In this article, I’m going to explain reasons why veterans make ideal team members for the Agile process and benefit your organization as a whole.

Logs Fitness Exercise Teamwork Training Cooperation

  1. Veterans Know Their Team

    Being a scrum master or product manager is a lot like being a fire team leader. A fire team leader is usually in charge of 3-4 other teammates. Each member of the fire team has a unique skill. It is the job of the fire team leader to know how to maximize each individual team’s skills and exploit their capabilities to crush their objectives.

    Similarly, a scrum master is part of a small team of people with unique skills. Whether it’s a frontend, backend, or quality assurance engineer, a scrum master needs to know the unique capabilities of each member and how that role affects the team. Knowing how each team member approaches problem solving from their unique perspective allows the scrum master to execute better sprint cycles, reduce stress on teammates and allows them to perform at an optimal level.

    Agile Team

  2. Veterans and Scrum Masters Excel at Removing Impediments

    In the military, I was occupied with the concerns of my team’s welfare and the three B’s: Beans, Bullets, and Bandages. Beans meant you made sure they were well fed, paid and that their basic necessities were taken care of. Bullets meant a person was well supplied with the right tools for the job. Bandages refer to a member’s health. If a member was sick, I made sure they went to medical. The concept that was drilled into me was the necessity to take care of your people and help them remove the roadblocks from their life.

    In an Agile environment, scrum masters are also obsessed with similar concerns. For example, when my team works overtime for weeks on end, it is my responsibility as the project manager to make sure they get the breaks they need to recharge. If a teammate has an issue with their pay, I will stop everything I am doing and resolve it right then and there. I do this simply because they would be preoccupied otherwise. Having distracted workers who cannot focus on the ticket in front of them brings down the whole team.

  3. Veterans and Agile Team Members are Adaptable

    Veterans were trained to be adaptable in any environment and under extraordinary situations. The field phrase often used is “improvise, adapt, and overcome.” The Agile process is designed to be flexible to adapt to the complex and ever-changing environment of the market and stakeholders. Given a two-week sprint, most teams can accomplish a lot of work. If a change occurs, the team is well poised to regroup and begin work on the priority almost immediately. Adaptability for an agile team is a key skill needed to survive in any environment, especially in the hostile free market.


  4. No is not an Option

    Military members are trained as a group to understand the concept of mission first. Once the goal is clear, the finish line will be crossed. This means they will stop at nothing to do what is necessary to succeed. Often in the military plans go wrong, and it is up to the fire team to make sure that plans are executed.

    Recently, my software development team worked 70+ hours a week for several weeks through the July 4th holiday. It was necessary to launch our client’s web platform. Military people understand this concept and experience of grit at a level that most do not. Sacrifice during critical times may make the difference between success and failure.


Final Thoughts

I’ve only discussed a few of the things that make a service member an ideal teammate in an agile process. In my experience with careers in both the military and in the software development world; knowing your team, removing impediments, being adaptable, and having grit are the transferable skills that most employers want in all of their employees. It just so happens you don’t have to look far for a veteran, even if their background is from the infantry. Oorah!

If you have questions, please contact us:
 vs Scrum Alliance: How to Train in Scrum

By Agile, Development, Leadership, Organizations


Agile methodologies have gained significant traction since the 2000’s.  Scrum is an Agile methodology that promotes bottom up leadership by utilizing self-organizing teams, not top down direction.  To understand why Agile is such an effective development strategy or how to transition your difficult team to agile, check out our other Blog post: Corporate Agile & How do I Transition my Difficult Team to Agile? 

The big question is you are most likely having is what is the best company to certify with: or


During the early 1990’s Ken Schwaber and Jeff Sutherland jointly presented a paper at the Business Object Design and Implementation Workshop in Austin, Texas. This gained more publicity in the 2000’s and led to the birth of what we now know as SCRUM. Schwaber and Sutherland formed the Scrum Alliance and the CSM (Certified Scrum Master) certification. In 2009 Schwaber left and created his own certification, PSM (Professional Scrum Master), at   One of the best articles that we have read is from .  If you haven’t read this article about the fragility of the scrum certification process, you should.  Below is our take on each program.

If only we could settle this with an epic of rap battle between Ken and Jeff.  Sigh… this topic most likely won’t reach the high ERB entertainment threshold,  lets take a quick look at the different ways people can become certified.

Scrum Alliance

The Scrum Alliance alliance offers certification to become proficient in Scrum, whether as a Certified Scrum Master (CSM), Product Owner (Certified Product owner) or even Developer (Certified Scrum Developer). The test’s only requirement is a two day Scrum course (approximately $1,295, depending on the instructor). Once you have completed your training, you can take your test online. The pass acceptance score is 24/35 questions (65%). Obviously, this is not particularly difficult to pass, but it’s not meant to be. You have gone through the rudimentary training, and you understand the basics. To become truly accomplished at Scrum it takes experience. For training courses to receive certification via the Scrum Alliance, you can find a searchable list of available trainers/ courses on the home page of their siteSample of a course


For those who do not have the flexibility for a 2-day course, or for those who have their team spread geographically, has you covered. offers certification straight up with no mandatory training. You will however need to motivated and pull your own training courses together.  Obviously, it is best to train before taking the test as it has an acceptance score of 85%. The courses are named differently than those of the Scrum Alliance (e.g. CSM is PSM (Professional Scrum Master)) but they cover the same material. offers 2/3 levels of certification with varying prices according to the certification. For example, a PSM certification is typically $150 for the first tier, $250 for the second and $500 for the third. A Professional Scrum Product Owner (PSPO) only has two tiers ($200 and $500).  For all of the certifications, you do not need to take the lower tiers. If you feel you are capable, you can go straight to the top!  Don’t worry however, there is a pricey class you can attend as well for $1,495.

Failing the Test

Here is a story about failure and success with the scrum master certification.


Cert Type Scrum Alliance
Certified Scrum Master/Professional Scrum Master ~ $1000 $150/$250/$500
Certified Scrum Product Owner/Professional Scrum Product Owner  $1200 – $1500 $200/$500
Certified Scrum Developer/Professional Scrum Developer $1800 – $3000 $200

Scrum certification isn’t required, but it is a nice to have.  Because of the pricing and convenience, we enjoy’s model thoroughly.

Note: Both sites offer various other forms of Scrum certification which are worth taking a look at, but these are the three core ones.

Additional Resources

The internet provides many free resources for Scrum training. My favorite is the Scrum Training Series by Michael James (shout out to Michael, thank you for your impressive training via your site!!)

Regarding books, if you want a quick page turner you should try ‘Scrum: A Breathtakingly Brief and Agile Introduction‘ by Chris Sims and Hillary Louise Johnson. For a more in depth look into Scrum ‘The Elements of Scrum’ by the same authors will provide you with all you need to know.

If you have any questions feel free to comment below or shoot us an email at