What do I expect from my leadership in my tech startup?

One of the best questions a leader can ask people they are leading is “What can I do for you?”

Unfortunately, without a burning desire for a specific thing to happen this is a really difficult question for anyone to answer. So when the Lead Engineer on my team, the Engineering Manager, or the founders and executives of Infinicept ask occasionally what I expect from them, what is my answer? What do I expect from the leadership in my tech startup? These are very important questions that require some thinking before answering.

What do I expect from the leadership in my tech startup?

I served in the Marine Corps so when I think of good leadership I think of military leadership. But what can I translate from a large organization built to kill and destroy as efficiently as possible to a small, very non-violent, tech startup intent on responding to clients and changing the payments industry? More than you think.

I want to know that the leadership in my tech startup is focused on my welfare as a software developer and as a person. I want them to be focused on making sure I have the time, tools and resources to do my job effectively and enjoyably so that I can focus on my tasks and my life.

I want clear direction from my leadership and I want that direction to be the same from all levels of leadership. From the top down, each level of leadership should provide more detail of the implementation of the direction. From the bottom up, each level of leadership should be able to easily detail why the implementation details are related to our direction.

I want the option to be involved in thinking through administration and planning but I do not want to feel obligated to make those decisions. I don’t know how to run a tech startup and I don’t know how I want to develop software but I have opinions and I will feel more valued knowing that my opinions are heard.

I want structure that is defined, adaptable and receptive to feedback. Startups are defined by our desire and ability to grow and change rapidly but that growth cannot happen without some structure. This is likely the hardest thing I ask of my leadership.

Considering Welfare

Many of us think of the people above us in the chain of command as our boss and our boss’s boss and on and on until we get to the top person in the organization. Good leaders think of organizations in the exact opposite direction. They see the people below them in the chain of command as people they need to support more than as the boss of those people. A director is not a director without people to direct. Without care for our welfare, we will not do our jobs well.

Marine Corps Welfare

In the military, the term “administration” means the management of all phases of military operations not directly involved in tactics and strategy.

This includes things like feeding, clothing, equipping, sheltering, paying, transporting and maintaining the health and welfare of the unit as a whole and of its individual members.

“Administration” is maintaining the health and welfare of the organization as a whole and of its individual members.

In the Marine Corps, the three people who are directly responsible for administration as it concerns individual Marines are platoon commanders, company/detachment commanders and first sergeants. This attitude of servant leadership continues down chain of command to squad leaders who lead a group of 12 other Marines and their fire team leaders who are in charge of leading a group of 3 other Marines.

This servant leadership allows Marines to focus on their tasks because they know that their leadership is caring for them and giving them the resources to perform their duties.

This does not mean that the people in leadership need to do all these things for the people they lead. I have never seen a First Sergeant set up a mess tent by themselves, however it is common for a First Sergeant to coordinate the setup and operation of a mess tent by giving their Marines the resources, time and assignments to ensure that the mess tent provides food for the Marines. A commanding officer does not iron a Marine’s uniform for them but instead gives them training, resources and time to be ready for inspection.

Tech Startup Welfare

I expect founders and executives to provide pay, benefits, perks and deal with HR-type things and office logistics and employee appreciation.

I expect tech-related leadership to be in charge of things like defining the Software Development Lifecycle (SDLC), setting up environments, making testing resources available, defining deployment process and resources, defining the review process, etc.

This does not mean all this stuff has to be done for me by leaders. A leader who over-extends themselves for their team is not a good leader, they are a martyr. Instead I want to know that my welfare is something my leadership is always considering. This can be shown by doing things, discussing things and giving me time and resources to take care of these things.

Provide Direction

If there’s one thing the military is known for, it’s giving orders. However, clear direction is not just important in the military. Clear, well-communicated direction is important for any organization. And the more trust there is between leaders and subordinates on a team, the more collaborative this direction can be.

Clear, well-communicated direction is important for any organization.

Marine Corps Direction

After a squad leader has completed a plan of attack, they will issue the attack order. The format of this order is well-defined as the Five Paragraph Order.

The Five Paragraph Order:

  1. Situation: Description of enemy forces, friendly forces detachments and attachments. This ensures everyone involved is has the same situational awareness and the same understanding of the circumstances.
  2. Mission: The expectation of results. This is often framed in relation to the larger organization’s mission.
  3. Execution: Concept of operation, subordinate mission instructions and coordination instructions. This is the details of what subordinates are expected to perform to achieve the mission objective so that everyone is crystal clear about their role.
  4. Administration and Logistics: Details any extra equipment needed and how equipment will be provide and how administrative tasks will be handled. Even in attack orders, the welfare of subordinates is considered!
  5. Command and Signal: Communication and special signal instructions and the location of the commander. This is how the team will communicate and where to go for answers and support.

Each level of command should be able to give a 5 paragraph order to their immediate subordinates until everyone is on the same page and knowledgeable of their role in achieving the mission objective.

Tech Startup Direction

Take away references to “attacking” and “enemy forces” and the 5 paragraph order is a great model for communicating direction for any organization.

When a direction is decided by my leaders I want to know why the direction is desirable, the expected results, the role of my team and myself and to know that we have the support required to reach that expected result.

If we compare a Marine Corps rifle squad or fire team to a development team then the Situation and Mission is given as part of sprint planning and task descriptions. Execution, Administration and Logistics are handled by grooming tasks and by engineers discussion implementation. Command and Signal is handled with Kanban boards and work agreements.

If we can make Epics, Stories and Acceptance Criteria consider all the things that are considered in a 5 Paragraph Order, then we can ensure that everyone is moving in the same direction.

Collaboration

The more that members of a team trusts each other, the better we will be by collaborating with each other and with our leadership. While the military is known for giving orders, collaboration is key to military success. A leader who does not listen to the people they are leading is not a good leader. Also when things are constantly changing, as they happen in combat and in tech startups, it is impossible for a leader to make all the right decisions on their own. When a leader knows they will get good information from their subordinates and subordinates know that their leader will pay attention to the information they provide, good things happen.

When a leader knows they will get good information from their subordinates and subordinates know that their leader will pay attention to the information they provide, good things happen.

Marine Corps Collaboration

In a combat situation, Marine Corps leaders send Marines out to patrol and scout to find information about the current situation. When reporting information on enemy units, Marines are encouraged to consider the acronym SALUTE to report the enemy’s Size, Activity, Location, Unit, Time and Equipment. Marine Corps leaders trust the information provided by their Marines and use this information to plan their strategies.

This trust and comfort with collaboration do not just happen. It takes time to build trust between leaders and subordinates. This trust is tested in everything from training to living together to going out and having fun with each other.

This trust and ability to collaborate are vital when things do not go as planned. A bedrock of trust allows a Marine Corps unit to adapt and overcome obstacles because they’ve trained enough to make the feedback loops between leaders and subordinates quick, open and honest. The best military units have the most collaboration.

Tech Startup Collaboration

A tech startup, obviously, deals with much lower stakes but the need for information, ideas and trust stays the same. It is on the leaders to ask good questions and trust our answers and it is up to us to give good, honest, open answers.

Much of the collaboration in a tech startup happen in agile ceremonies but the gist is the same. Leadership provides goals and asks for information. Subordinates provide information and opinions. The better each is at giving good, open, honest information and acting on the words and trust, the better the team performs.

Good leaders encourage collaboration and trust in their team by listening to feedback and making decisions based on that collaboration.

Structure

I work best when I know my role in a team and I know that the role I’m in is important. This structure is engrained in the military but it has to be invented in a startup and constantly involved. When members of an organization are confident of our role, feel valued and know of the resources available to us, good work gets done in a more enjoyable way.

Marine Corps Structure

Each unit in the Marine Corps has a well-defined Table of Organization (T/O) that lists the different billets (roles) and the requirements for each role. Leaders can use this to place Marines in different roles to make the unit work. Each Marine knows their role and the roles of other Marines which makes it easier to accomplish missions. This T/O allows all Marines in a unit to know the resources available to them and gives leadership an idea of their capabilities at a glance.

Tech Startup Structure

In a tech startup, near constant grown and change requires constant restructuring and constant communication. This makes creating and communicating the structure of the company very difficult. Tech startup employees also enjoy working with less structure and feel a sense of freedom and ownership in a flattened hierarchy.

Regardless of how the startup is structured, there still needs to be some structure otherwise employees will be unsure of their role, their value and unsure of the roles and resources available to them. Structure in a startup should not and cannot be rigid. This is why asking my startup leadership to provide structure is one of the biggest things I will ask of them.

Conclusion

Good leadership is good leadership regardless of the organization. If a leader can show care for their subordinates, provide direction and structure, and show value of collaboration, they will provide good leadership. What qualities do you expect from a good leader?

The Obligatory “I’m Blogging Again” Blog Post

It seems like anyone with a personal blog that is over a year old has lulls in the amount we publish and those lulls can only be ended with the obligatory “I’m Blogging Again” blog post. We do this because we feel weird just saying something after a long period of relative silence and mostly as a way to try to hold ourselves accountable.

If we publicly say that we’re going start writing more then we surely have to start writing more. Right?

It’s a flawed but well-meaning strategy, but has become a true tradition of blogging so here is my “I’m Blogging Again” obligatory blog post.


I’m blogging again, but not about the same things since I’m at a different point in my career. I started this site to share my passion and show my ever-growing knowledge about software development as I pursued my Computer Science degree and I used the Colorado Tech Weekly series to brag about the Colorado tech community that I wanted to be a part of because I was uncomfortable talking about myself.

Since starting this site, I’ve graduated with my Computer Science degree and started working in my dream career as a software engineer. When I started working at Infinicept we had 3 software engineers. We now have over a dozen software engineers and Infinicept is number 95 on the 2020 Inc. 5000 which is AMAZING (and yes we are currently hiring for engineers)!

Our company is growing and changing and trying new things and doing important things to support and change the payments industry and being involved in creating, managing and supporting our software, our clients and each other can be intense and overwhelming. This is the main reason I’m blogging again.

I am blogging again because I have thoughts, ideas, opinions and knowledge about software development. I care about creating and maintaining a good culture in teams and in communities. I am ever curious about good project management. I want integrations, deployments, version control and architecture to work well for us and I want us to be able to discuss these ideas and learn and share knowledge about these subjects because they are very hard subjects to learn and discuss.

I am blogging again because I’ve been a software engineer at a quickly growing startup for almost 3 years and the amount of things to learn and implement and know and learn again is mind-boggling and kills confidence easily and by writing the things I know and the thoughts I have I can look at them to remind myself that I know way more than I did before even though I’ll never know as much as I want.

I am blogging again and I’m sure having this post show up in your RSS feed or your email inbox is a bit of a surprise. I hope it’s a pleasant one.

How I Maintained Colorado Tech Weekly For 350 Straight Weeks

I recently decided to stop posting Colorado Tech Weekly blog posts since they’ve served their purpose for me and, after 350 weeks (that’s over 5 YEARS!), I’d like to do something different. I think it’s a cool resource and I’d love to see it continue but I don’t want to be the person doing it.

I was asked during a CodeNewbie Twitter chat if there was such a thing as a Florida Tech Weekly by someone’s who name I assume is Erin.

I don’t know if such a resource exists but if Erin wanted to be that resource I think that would be pretty cool and, if I do say so myself, it’s a great way to get your name known in a community without uncomfortable self promotion. With Colorado Tech Weekly I got to promote myself by promoting the people, companies and organizations that I admired which feels like a win for everyone involved.

Here’s my guide for creating your own series to aggregate news on a subject that you care for:

First you will need these things

  • A place for your content. I used my website but I suppose you could use social media or email as a newsletter if you want. The format isn’t as important as the content.
  • A way to get news. I use Feedly (I originally used Google Reader but those were simpler times) and subscribe to every RSS feed I can find related to Colorado Tech. I subscribe to news sources, personal blogs, company blogs, and any and all resource that has an RSS feed. Don’t worry about being overwhelmed by all these sources. I currently subscribe to 991 RSS feeds. Over half of those feeds are either inactive or inaccessible and very few of them post regularly.
  • A way to save news. Feedly has a good integration with EverNote so I used that for a while but I also pay for Microsoft Office so I switched to using OneNote. I save links to articles in OneNote using an IFTTT applet and Feedly’s board functionality so that every time I save an article to my Colorado Tech Weekly board in Feedly, it creates a page in OneNote. Both EverNote and OneNote both have browser extensions too which turn out to be very important.
  • A way to find events. I primarily used Meetup.com and signed up for every tech-related group I could find in Colorado. I’d spend about an hour or so every Sunday saving every interesting meetup that had more than 10 people signed up to attend. Other event resource I found were BuiltInColorado, Colorado Technology Association and anyone who reached out about events. My EverNote and OneNote browser extensions made it very easy for me to save links to events.
  • A time frame and a limit. I got my idea for Colorado Tech Weekly from listening to the Daily Tech News Show where they take all the tech news that ever exists every day and choose only 10 headlines to discuss. By limiting my posts to 10 stories and 10 events every week, I could avoid feeling bad about leaving some headlines out of my blog. If I just yeeted every headline into a big list it wouldn’t add much value anyway. However…
  • Extra Bonus: Another way to share news. My Twitter account is more than just Colorado tech so I created a Twitter account just for my Colorado Tech Weekly articles. This is populated using the same Colorado Tech Weekly board in Feedly. Using another IFTTT applet, whenever I save an article to that board, it adds Tweet content to a Buffer account that then sends a tweet using the COTechWeekly Twitter account.
  • Promote your series and your community. When you share your series on social media, tag the people and organizations that you mention in your posts. This gets their attention which can lead to great connections!

My Process

  • During the week I would take a little bit of time each day to look through Feedly on my phone and save interesting articles to my Colorado Tech Weekly board and my IFTTT applets would take care of the rest. News curation was that easy.
  • Every Sunday I would sit down and look at all the articles I’d saved during the week to figure out which 10 articles I would share in my Colorado Tech Weekly blog. I would also visit the sites I trusted to have relevant events, save those events then figure out which 10 events I would share. Then I’d write… something at the beginning of the post and schedule it for 2:00am Monday morning so that it was available before most people woke up for the week.
  • Every Monday morning I would share my blog post on LinkedIn, Facebook and Twitter. I would share my post on Twitter 4 times with 30-60 minutes between each tweet using HootSuite with this structure:
    1. At 8am: A good ol’ tweet with the blog title and a link.
    2. At 9am: A tweet saying “CTW #<whatever> with top stories from (a list of the Twitter accounts for news sources I used) #coloradotech”
    3. At 10am: A tweet saying “CTW #<whatever> with top stories about (a list of the Twitter accounts for the people and organizations mentioned) #coloradotech “
    4. At 11am: A tweet saying “CTW #<whatever> with top events from (a list of the Twitter accounts of the organizations hosting events) #coloradotech “

Some other things to consider

  • I only posted headlines with links to the news articles. Do not copy the article content. That’s just a jerk move and if you don’t care about being a jerk, copying content can lead to legal issues and will cause your news sources to find ways to shut you out.
  • Your time frame can differ. I chose to do my series weekly cuz I knew I couldn’t do it daily but depending on your level of interest and amount of content, your series can occur however often you want.
  • Remember that by promoting others by using your resources that all involved should feel supported.

Now that you have all my secrets, ignore the tips you don’t like and go create your own thing! Then let me know about it please.

Good luck!

Time For Self Makes For Better Time With Others

Taking time to take care of myself makes me better in my roles. I need to repeat this so that I continue to believe it because it’s easy for me to feel selfish for doing these things.

This is another week that I sit down to write without publishing anything. Last week was cuz of personal mismanaged credentials. This week it’s cuz I’m at a different coffee shop with secured WiFi and I just don’t feel like asking for the WiFi password.

The good part about not being connected to the internet is that it makes it basically impossible for me to do any work-related work. Three weeks into my commitment to taking time for personal professional development and I still feel pressure to be writing code instead of doing this. To be clear, this is mostly internal pressure.

This morning I went for a walk. Last week it would’ve been a run but since I tweaked a calf muscle on Saturday I want to let it heal but I also want to make sure I keep moving. I need the exercise. I don’t just need it for weight loss or for muscle building although those are nice bonuses. I need exercise to deal with stress.

While I was on my walk, I was thinking about how I was the first one in the office every morning last year. It felt good to be the first one in. It was quiet. I could make sure that I had my thoughts in order and have my day somewhat figured out before I needed to talk with anyone. I miss that. However last year I also had my first ever panic attack, I gained weight and I had some other stress-related health issues. I don’t miss that at all. I want to be someone who exercises and writes words and writes code and talks to friends and family and cares for his house and his self. I don’t just want to be someone who writes code and it’s strangely really tempting to just be someone who writes code when it’s your first development job and it’s at a small, growing startup.

This is part of the reason I go for runs/walks and write in the morning because I feel like my time and attention is a little less requested in the mornings. We are going to address our stress in one way or another. If we don’t do it mindfully, we will relieve stress in unhealthy ways (alcohol, being a jerkface, constant worry, etc.) so it’s important that we find ways to do it in healthy ways (exercise, writing, puzzles, yoga, therapy, etc.).

Technology Makes This Easier All The Time

I was gonna sit down and write about how hard it is for me to spend at last 30 minutes once a week to sit down and write because there’s work to be done and OMG why aren’t I doing that work right now?! I was also going to publish my writing from last week because having thoughts that are written with the purpose of being shared that are unshared make me feel uncomfortable. However I am unable to log into my website to share my thoughts from last week and, since I set this time aside for writing and not for website troubleshooting, I’m going to write and not troubleshoot.

All our technologies and accounts and subscriptions are sold to us with the idea that it will make our lives easier. The entertainment subscriptions will entertain us and the productivity apps will make us more productive and all the other promises that say “just set this up with us and we’ll take care of the details”. It makes us want to squeeze more into every day because we’re told that we can because the hard things are easier now. This is… mostly (halfway?) true all the time. However it leaves us very little time, energy and attention to really focus on troubleshooting the thing when the thing fails to make our life easier. Many of us will just ignore that the thing didn’t work right and try again next time or we don’t focus on the issue and ignore the really helpful error messages and move on with our day or if we do try to troubleshoot the issue we are upset about the time we have to take to communicate with customer support or read documentation to fix the thing because we have all this other stuff to do!

One of the fun parts about working in technology is that when the thing I’m using to get work done doesn’t work as expected, it is my professional responsibility to find out why the thing isn’t working and to find a solution. If the code library I’m using to connect securely to a server isn’t working as I expect I can’t just ignore this or hope it works next time, I have to find a solution. It’s still frustrating since I was expecting the library to make my life easier but this kind of work is what I enjoy about being a software developer and doing the work as a job means I can justify the time I spend researching and troubleshooting as important work because it is.

I wonder if I can do more to justify the time I spend researching and troubleshooting in my personal life? That might make things more comfortable. Cuz then, THEN I can write my thoughts about the weird urge to overwork myself AND I can publish thoughts on my blog AND THEN I can feel more comfortable with how I’m spending my time.