Software Developer – Starter Kit

Jumping from a controlled environment of education to an open world industry with lots of choices and paths is not natural nor easy. The education system is half preparing us for real-life problems and use cases, and most of the “solving algorithms” being thought have an ideal context for simplicity reasons.

I found myself that among entry-level developers and people looking for a career shift, there is a need for a roadmap: something that will guide them towards a successful professional developer career in an efficient way – nobody wants to waste his time.

I learned some lessons that I would have liked to know when I took this path by trial and error. Here is my Software Developer Starter Kit that I carried in my backpack while traveling this road.

1. Find yourself a mentor or somebody to admire

Either if it’s a senior colleague or a software developer you follow on Twitter or YouTube, you need the vision, steadiness, and creativity of somebody better than you. You need to learn how to focus and how not to get lost in details. You need to learn how to learn.

Imitate, Assimilate, Innovate.Pragmatic Thinking & Learning, Andy Hunt

It’s not a secret: every job has to be learned, tested, and improved, and the best thing to do this is to watch a master doing it. Usually, you will find this person without too much effort. He’s the guy that everybody respects in your company because he proved himself by delivering high standards results. Watch him work, watch his behavior, watch his attitude in different situations, ask him what he does to improve his work and what you can do to improve yours.

If you’re not in the luck of having such a person in your company, look for a source of inspiration online. There are lots of guys out there that share tutorials, courses, and projects. These people know what they are doing – they are professionals. Watch them. Learn from them.

2. Read a lot

I remember I was not much of a reader myself because of the imposed literature in school. I was in the industry for some time when I met my mentor. Guess what his first advice was?

There’s no shortcut to learning a craft; you just have to put the years in.Kylie Minogue

Well, reading is a kind of shortcut to learning the craft of software. Take it this way – a guy with some years of experience decided to gather all the information on a specific subject and put it in a 300 pages book. He distilled the information, reviewed it, improved it, made a couple of drafts, and then showed it to some other professionals that gave their opinion. Then he published it to the world. It would definitely take more time for you to look and understand that volume of information by just practicing and searching matching subjects on StackOverflow.

I believe that starting a journey with a book provides you with the necessary resources to succeed. It’s like a map of where you are and where you can go.

3. Code code code

A mentor and a book provide can provide wisdom, but that alone is not enough to be a professional. You need to practice.

Everything is practice.

With some background knowledge of the domain you’re diving into and some inspiration from your mentor, you are good to go. There are lots of projects you can start with. There are even websites full of ideas that you can pick from. Don’t make it too complicated – use the main idea and start from there. The rest will follow and remember: you’re learning, not starting a business(not yet, at least).

A simple but efficient method that I found interesting is learning by finding differences between languages, frameworks, and libraries. After I finished a project, I started again in a different language or using another approach. Try writing something in Java and then in C# or Python. If you wrote a front-end application in Angular, try to build it using React or Vue.JS. If you used a synchronous approach to a problem, try asynchronous.

4. Keep going

It’s fair to say that it’s not easy and there is a lot of information. In the beginning, many things won’t make sense, and you will easily get lost and discouraged, but don’t worry – it’s normal. You will get tired, feel overwhelmed, and definitely spend hours figuring things out, but it is well worth it.

Quality is never an accident. It is always the result of intelligent effort.John Ruskin

After some time, you will start to recognize patterns and feel like you’re familiar with a subject, giving you confidence. That confidence will power your curiosity. On the other hand, you will lose that confidence often when misjudging a situation or misusing information. The lesson you must learn is that with enough time, everything can be familiar.

I met some younger developers that were chasing money before they got to know the project, the domain they were working in, or the technology they were using. I’m not saying to spend your entire life at one job practice Javascript until the end of it(if there’s any), but before making such decisions focus on your personal improvement. The money will come and go, but the knowledge will stay. And you can produce money anywhere with that knowledge.

5. Make connections, not friends

We spend approximately one-third of our lives working. Our industry indeed offers the opportunity to work from home much easier than others, but be true to yourself: it’s still work. We spend an essential part of our entire life next to some people that we call “colleagues” and sometimes know so little. But we cannot help it. We are social beings, and we like to communicate and be part of a community.

One hand will not wash the other for nothing.

Usually, there are birthdays, weekend parties, team buildings, and some other events that bring people together in a company. These events create bonds between employees and help unify the team, but these bonds are dangerous. I’ve seen people that took decisions about their career based on the relationships at work.

I believe it’s good to have some relationship with your colleagues, one that will provide you with information and connections but if it comes to choose between a better job and an unknown social environment and the current job and a comfortable social environment, always go for the first one. You never know that the current situation will last forever or that the other environment will not be more comfortable. And either way, if you really have friends, you can see them outside of work.

This is my starter kit and I wish I knew these things 5 years ago.

How to start a movement to change your company’s culture

Intro

If you’ve worked for a few years, you’ve probably had the back luck of running into an organization with a toxic culture. Or maybe the culture was not toxic, but it wasn’t great either – it kept going on a steady course, and nothing extraordinary made it rise above mediocrity.

These situations often trigger a sense of expectation from the organization’s leadership team. We naturally feel that if they lead the company, they are also responsible for our well-being. While this is true, most leaders wouldn’t even know there is a problem, and some wouldn’t even care – after all, things have worked like this so far. So why should they bother now?

This situation raises anger in most employees, especially the dedicated and talented ones. The best advice would be to run off and find a company with a culture that suits your values. Or, if you’re on cruise control, just ignore everything and go with the flow.

However, if you decide to stay and do something about it, here are some steps on how you could start changing the culture:

1. Understand the current culture

If you’ve made it so far, you probably feel part of a not-so-great culture. Before taking action, you need to become an impartial observer. Emotions can be very deceiving and, when not identified and appropriately treated, may lead to wrong perceptions and bad decisions. 

Once you become a “legitimate” observer, it is time to analyze the current state of your culture.

Find what’s missing

Start with what you think is missing and determine the source of the events in retrospect. 

  • Is it a recurring situation? 
  • Does it happen to anyone else? 
  • Did you hear anyone else complaining about these things? 

These questions could be helpful remove subjectiveness from your analysis. In some companies, people might be afraid to speak up, so you might as well just ask them.

Test the mission, vision, and values

Not having any is a big red flag.

  • Are they connecting to what’s happening? 
  • Is the decision-making process based on this system? 
  • Do people enforce the culture through artifacts, stories, or behaviors?
  • Is anything missing or, worse, contradicting the culture?

Analyze behaviors

Watch the interactions and behaviors of the people. Interactions and behaviors seem like an open book as you walk “through” your culture. Scanning and analyzing how people behave can reveal a great deal of information.

  • Do they follow a particular pattern when it comes to decision-making?
  • Are they communicating effectively?
  • Are feedback and knowledge sharing part of the culture?
  • How are they dealing with the crisis?
  • Are people more self-oriented or team-oriented?
  • What’s the level of politics or gossip?

Map processes

Map processes and practices for a better understanding. This refers to both documented and undocumented patterns people follow in dealing with situations.

  • How strict are the processes?
  • What’s the level of freedom in decision-making?
  • Is it a flat structure or a hierarchic structure?
  • Is there an onboarding process?
  • How does the reward and recognition system work?
  • How is the performance evaluated?

Research history

Look into the company history and its stakeholders. Try to find out where the company comes from, who’s leading it, and why they would choose to have a culture like that. There could be many hidden reasons behind it that may not be obvious at first glance.

  • Are the leaders intentionally choosing and fostering this culture?
  • How risky is it to start acting differently?

This is essential to clarify before proceeding, as your actions may lead to your firing.

2. Define your movement

Once you’ve identified how things are and how people behave, it is time to define what you would do differently, why, and how these changes will help people in the future. Remember that movements are not about yourself but the people joining the movement.

Branch out

Do not drift from the vision and mission. While values might change to adopt a more effective way to operate, the mission and vision are the reason the company exists. While there is a temptation to come up with a better mission and vision, keep in mind that this is not your organization, and you are only doing this to improve the company.

Think critically

Be frank about how changes will fit the current context. While researching what you can do to improve the company culture, you’ll end up reading a lot of exciting ideas. Over the last years, the information on company culture just exploded, and there aren’t good or wrong decisions you can make – just decisions that are a good fit for the given context. For example, promoting an unlimited-vacation-days policy is ineffective in companies where people have low intrinsic motivation for their work or don’t believe in the company’s mission.

Tell a story

There’s no movement without a great story. To sell your ideas, you need an inspiring story about how things will be in the future and what great life everyone will have if you succeed. This is your advertising, and the culture is your product. Reaching prospective “clients” and turning them into members of your tribe is your number one priority.

Be heretic

Be a bold leader. People do not join the movement for you; they do it for themselves. To become an inspiring leader and make people believe in the movement’s mission, you need to get 110% passionate about your goal and 120% devoted to your success. You need to assess that failure is not an option, and you will do whatever it takes to get there.

3. Create a clique

Beginnings are the most challenging part of any project and can become a demotivating factor. Challenging the status quo is not easy; change will always be interpreted as a “bad” thing because it threatens stability, and you’ll definitely meet with resistance.

Core-team

First, find a few people to sell your story. These people might be the co-workers you spend time with or your teammates. You don’t need to convince everyone, and you surely won’t. So the first step is to test your hypothesis and see how many people are willing to contribute. The second step is to reach a 15-17% adoption rate of the total number of the team, department, or company employees, depending on your scenario. 

Caveat: if you plan to change the company’s culture, it is better to start converting your team, then other groups, and then the whole department before going global.

Keep repeating

Set the story on repeat. The story of your movement should be played every day, with every occasion. Keep reminding people why they’re doing this, why it matters what they do and what the end will be like. Faith is a critical factor, especially in long-term endeavors. Changing the culture is not a few-days task. It will take time, and people need to be reminded why they do what they do to stay motivated.

Foster the network

Convince others to convince others. Once you have a small, stable clique, you can expand and start talking to other people from other teams or departments. Listen to their problems and emphasize by telling them you had the same issues and solved them with the new culture and how you’re doing things differently in your team. The advice you offer, hopefully, will start expanding around the organization.

Find an enemy

In some cases, a villain can help strengthen the need for change. Unfortunately, scapegoating is embedded in our nature. People love finding reasons or excuses for their current situation instead of doing something about it. The enemy could be the current culture or some individuals who are not compliant with how things should be. Creating a tunnel for negative energy toward a villain can instill a sense of battle and a desire to win. But be careful – this road can also lead to undesired results if not handled well.

4. Build artifacts

Brand your movement

Now that you have a mission and a crew, it’s time to brand your image into something tangible. You should give your unit a name and maybe create a logo. T-shirts, mugs, bookmarks, backpacks, office toys – everything you can think of should be transformed into an artifact of the new culture. A rewarding system might boost the group’s energy, such as giving prizes to people who recruit other people or who achieve essential milestones in your strategy.

Make it personal

Artifacts are powerful and create a sense of belonging and cohesion inside the group. But making some of them personal has even a bigger impact. For example, you could collect funny statements from your peers that you can print on bookmarks. You could also create artifacts relative to specific individuals’ unique skills. For example, you could create a brooch with an “ambassador” icon for someone good at influencing others into joining the movement.

Mark important moments

Celebrating wins attracts the desired behavior in your movement. Therefore, you should not miss any opportunity to recognize and reward such moments with unique artifacts such as medals, trophies, or nameplates. These items are best offered in a ceremony. Watch out for competition at this step, as others may start to feel they’ve been mistreated. Try to be clear about what an important moment is and what it takes to get there.

5. Make it visible

Show off

Now that you have the whole arsenal, it’s time to show it to the world. Wear your artifacts proudly and be sure others notice your culture. You should let the new culture express itself as much as possible. You’ll probably meet with criticism and negativity but don’t worry. This is just a sign that you’re on a good path. People do that when they feel threatened or scared.

Promote

You should make the most of any chance you get and talk about how you’re doing things now, how impressive your processes are since you’ve joined this movement and how good you think the future will be if everyone does what you do. This is when recruiting is at its full potential, and it’s practically self-sustaining.

Close the circle

It is good to make public the great parts of the new culture and let others know and use them. However, there should also be some “members-only” activities. This makes members feel rewarded and appreciated while instilling in others the desire to have that experience. These activities might include personal development workshops, work-related workshops, outside-the-office activities such as parties or team buildings, and so forth.

Conclusion

Changing the culture is possible even when you’re not in charge or in a top-level position. Leadership is built on influence, not authority. As long as you believe in your mission and foster a community of belonging, you have all the chances to succeed. 

Change is about innovation. Take the lead and provoke the status quo.