Since I started developing software back in the 80’s, there have been incredible advances in technology. It’s difficult to remember what life was like before the internet.
My grandchildren will probably never walk into a bank to cash a check on payday or pay for long distance phone calls and they will never use a map to figure out directions to a vacation destination (unless it is in history class).
Technology advances are equally dramatic in software development. In my early days at VeraCore, users had little to no experience with computers and accessed our software through hard-wired connections. Our DevOps process included distributing software on floppy disks twice a year. The hard discs of the computers that ran our clients’ businesses held a mere 20 MB! We had to remove the source code from our software release so it would fit on the hard disk with the client’s data.
From the outside, there is little resemblance between our software today and our software 30 years ago. Today’s users embrace technology and expect a rich user experience and advanced features. We now deliver our software using an evergreen approach where new features get pushed to production electronically with a gated approval process. Most users subscribe to our cloud model and access the application via the internet from desktop computers, laptops, tablets, cell phones and other wireless devices.
After hearing all these differences, I’m sure you are wondering what hasn’t changed. Most people are surprised when I say that much of what we continue to do every day is very close to what we did 30 years ago. The fundamentals of problem solving and designing software solutions to meet business challenges have not changed much at all in the last 30 years.
At VeraCore, we’ve never pretended to live in a field of dreams. Our development backlog and the features that we deliver have always been built based on the needs of our customers. We gather requirements by talking to our customers and understanding the business challenges that they are trying to overcome. Experience tells us that challenges come in waves. If we hear a new challenge from a customer today, it is very likely that other customers will face the same challenge in the coming months.
Our development teams have built an understanding of the fulfillment process that goes much deeper than picking and packing orders. Once we understand a new challenge, we brainstorm ways to conquer the challenge. We aim for a flexible solution that both solves the current business challenge and is configurable enough to solve future challenges. Our software is a living product that continuously evolves. We will never be done developing and every day brings a new challenge.
I can talk about the infinitely many changes in software development over the years, but the code is just one piece of the puzzle. Our agile approach to software development in the past 35 years has allowed our product to grow organically from its roots in printing & mailing to the powerful, rules-based platform that supports thousands of applications today.
The fulfillment and logistics world is changing at a faster rate than ever, and it is always exciting to see how the next business challenge will advance our software platform.
Jodi is a life-long VeraCore employee starting as an Entry-Level Programmer fresh out of kindergarten. She moved through the ranks as Programmer, Senior Programmer and Director of Software Development before settling in as Vice President. As a graduate of the University of Connecticut, Jodi had no idea where a math major would take her in life. She quickly learned that Numerical Analysis and Advanced Logic taught her critical skills for creating efficient software products.