Going from Junior to Senior Developer
The podcast features Ben Orenstein of Upcase, who advises on how to transform from a junior developer to becoming a senior developer. What is so apparent among the programmers but so strange among the people who want to learn programming is that one need not have a computer science degree to be a great programmer. The pre-requisite of becoming a good programmer is maximizing on time and having a passion for it. Funny enough, Ben majored in Philosophy and art History in the university, but today, he has transformed into a senior programmer! It’s also essential for one to be around a couple of friends who have a passion for programming, which will help in ideas exchange. Finally, Ben lives us with a great quote; when looking for a programming job, the currency is a quality code presentation. Additionally, a growing programmer must post a blog every day and document the learnings.
Your Team Should Agree On Their Target State Architecture
This blog from the Junior Dev Diaries provided great learning in tech debt. I hadn’t come across this terminology before, but it’s now clear on how companies can fall into tech debt as a result of choosing shortcuts in software development instead of using long but more secure ways. It’s not bad for companies to fall into tech debts if they have a plan on how to pay them. The best plan for companies to avoid tech debts or rather be in a position to pay incurred tech debts is to hold frequent team workshops (comprising of senior and a couple of junior programmers) on TSA (Target State Architecture) discussions. In these workshops, discussions related to the current state of the company’s architecture and the current issues should take preeminence. After learning about the current state of the architecture system, the team should now proceed to create a perfect system and make good use of it.
Imposter Syndrome
This fantastic talk by Mike Cannon-Brookes will surely be exciting and educational for every viewer. Mike starts by quoting, “I have experienced a lot of successes in my life,” but listening to his story, it’s impressive how he has made it. The Australian Billionaire and founder of Software Company Atlassian narrate how he started his journey with no experience. In most days in his first jobs, he reported to the office with no idea of what he wanted to do. Mike calls this feeling ‘the imposter syndrome.’ He defines imposter syndrome as an out of depth feeling. It’s a feeling that people get when they know that they aren’t experienced enough to justify being in a position. It’s not a fear of failure, but a fear of being discovered that at any time, someone might figure it out. Mike narrates numerous scenarios in which he acted as an imposter, but it’s his parting short that immensely motivated me; most successful people heavily question their ideas and knowledge and, in most cases, feel out of depth. It’s always important to ask for ideas advice and harness it into a force for good.
Class 4720
Introduction to configuration management
The link provided a video on “introduction to configuration management.” The term is defined as- a way of managing configuration. The most important takeaway for me is how to configure a web server. Configuring to servers scales linearly such that configuring two servers will take 2x times that of configuring one server. The first step is an intermediate assignment by typing the commands to use, paste them into a script, and save the configured files in their finished state and then write a script that did it. The next step involves testing the servers and follow up with monitoring, batching, troubleshooting. The last step consists of configuration management, which is a method of managing the configuration done by using tools such as Puppet, Ansible, Saltstack, and Chef. Configuration management includes processes such as automation documentation and enforcement.
What Is Configuration Management and Why Is It Important?
Configuration management is an engineering process that is involved in establishing and maintaining consistency in a product’s performance, design, physical attributes, operational information, and functionality throughout its useful life. Configuration management is achieved through automation using tools such as Puppet, Ansible, Terraform, among others. Automation helps avoid human error in coding as well as improve efficiency. Additionally, it makes configuration management of large systems manageable.
Configuration management comes with numerous benefits to organizations. Put, its configuration that makes all the systems, data files, networks, or servers work. A configuration management database reduces the potential for cyber insecurity and improves operations within an organization. Second, it enables cost reduction by providing knowledge of all the elements of the configuration. It also saves on cost by avoiding a duplicate of the technology assets in an organization. Third, the configuration management in an organization improves the employees’ experience by rapidly detecting improper configurations that may impend quality performance. It’s also important to note that in case of an outage, configuration management enables quicker restoration of service as the configuration is usually securely documented and automated. To avoid paying the price later, companies and organizations should make use of configuration management.
HERE! HERE!