23 minute read
News Watch
from SD Times April 2022
by d2emerge
NEWSNEWS WATCHWATCH
Better analytics in Google Play Reporting API
Android developers will now have access to better analytics around how their apps are doing with the new Google Play Developer Reporting API.
Previously developers could use the Google Play Console to track app performance, but some feedback that the Android team has received is that developers want to be able to track app vitals outside of the Play Console.
The new API will let developers utilize data from developer accounts. The initial release includes access to four core vitals: crash rate, ANR rate, excessive wake-up rate, and stuck background wake-lock rate.
Developers will also be able to view anomalies, breakdowns, and up to three years of metric history.
RedisJSON 2.0 introduces new indexing capabilities
RedisJSON is a JSON-standards in-memory database. According to the company, this type of database has many benefits over the commonly used relational databases, which Redis explained can be inflexible and have scaling issues.
To help address those shortcomings, RedisJSON offers flexible deployment options, cost savings methods, geo-distribution capabilities, and 99.999% uptime, according to Redis.
This release introduces native indexing, querying, and full-text search capabilities to help developers more easily modernize their applications. Now, indexing can be done synchronously. Once an index is created, every write or update operation will show up in the next query or search.
As of this release, the JSON Data Interchange Format is now a native data type, enabling atomic operations on sub-elements, which leads to improved productivity for developers.
According to Redis, this release is ideal for real-time economy use cases, such as storing and updating a product catalogue, matching riders or orders for transportation or delivery apps, and acting as a central repository for shopper, merchant, and retail profiles.
Biggest changes in Go 1.18 release
The Go development team has announced that the 1.18 release of the language is here. According to the team, this release is the biggest change to the language to-date.
“It isn’t a stretch to say that the design for parts of Go 1.18 started over a decade ago when we first released Go, ” the Go team wrote in a blog post.
One new addition in Go 1.18 is support for generics, which enables functions and data structures to be represented in a generic way. The support in this release will support many common use cases, and future releases of Go will continue to add support for more complicated situations.
Go 1.18 also fully integrates fuzzing, which inputs random data into a test in order to find vulnerabilities or bugs.
Another new feature in this release is the Go workspace mode that enables developers to more easily work with multiple modules. Go modules are a popular feature leveraged by most Go developers, but the 2021 user survey revealed that a main challenge of working with modules was the difficulty that arose when working with more than one module. The team hopes this new workspace mode will alleviate that burden.
In addition to new features, Go 1.18 has achieved a 20% performance improvement. This is the result of the team expanding the register ABI calling convention that was present in Go 1.17 to new architectures, such as Apple M1, ARM64, and PowerPC64.
Microsoft releases TypeScript 4.6
Microsoft has released the latest version of TypeScript, its language that builds on JavaScript and adds syntax for type. With TypeScript 4.6, users gain several new features.
Prior to this release, it was an error to contain any code at the beginning of a constructor if its containing class had any property initializers. TypeScript 4.6 makes it more lenient and permits other code to run before super(), while still making sure that super() occurs at the top-level before any references to this.
Additionally, with this release a signature can be declared with a rest parameter whose type is a discriminated union of tuples. This means that when the first argument is the string “str” , then the second argument must be a string or when the first argument is the string “num” , the second has to be a number. Also, in cases where TypeScript infers the type of a function from a certain kind of signature, it can now narrow parameters that depend on each other.
A few other noteworthy changes include that object rests drop unspreadable members from generic objects and that JavaScript files always receive grammar and binding errors.
Tricentis updates testing solutions
The new update service in Tosca 15 enables customers to more easily keep up with features by downloading individual engines or components of Tosca.
Tosca 15 now has significant new capabilities for mobile testing to simplify mobile cloud connectivity, reduce test cycle times, and increase continuous testing support including a new mobile engine that supports the latest iOS and Android OS versions and devices, the ability to test iOS with a Windows machine, and more.
Tricentis also recently added the ability for Tricentis qTest to run on Kubernetes to provide a faster, more scalable, and resilient test management solution for customers. Selfmanaged customers gained the option to manage qTest with Kubernetes, starting with the qTest 11.0 release.
Also with a NeoLoad 8 release, customers can gener-
ate load in the cloud from the NeoLoad SaaS UI, and execute load tests within five minutes.
Microsoft contributes features to Flutter for foldable devices
Microsoft has made some announcements regarding its support for developing for foldable devices with Flutter.
MediaQuery, which provides information on things like screen size, display density, and text scaling, now has Display Features. These are parts of the display that can be obstructed by hardware features, such as the hinge on the Surface Duo.
When users switch over to the master channel on their local Flutter setup, they can now access a property called ‘displayFeatures. ’
When users want to display content on only one screen of Surface Duo, which is the case when they’re showing a dialog, they now have the option of using the ‘DisplayFeatureSubScreen’ widget. The widget is mostly needed for modal routes and is used in the “Dialogs and popups support” PR.
Microsoft also added a number of new samples for foldable Flutter that showcase design patterns for foldable devices.
CData Connect Cloud is now available
The solution enables owners of cloud applications access to real-time data and unified connection.
The cloud data connectivity platform provides a centralized location for organizations to manage various integration points and connections to real-time data from an ecosystem of data sources.
CData Connect Cloud connects over 250 cloud applications, databases, APIs and services to allow organizations to quickly move and integrate data across the cloud with no coding, installation, or special skills required.
It also gives citizen data integrators and data engineers the ability to use real-time connectivity and their tools of choice, removing dependencies on IT, advanced programming skills, and other complex data movement processes.
Android to enable app archiving to free up space
Apps can now be archived to restore up to 60% of app storage. When an app is archived, only parts of it are removed, as opposed to fully uninstalling the app where it would be removed entirely.
When a user chooses to restore the app fully, it will be downloaded with the latest available version, keeping all user data intact.
According to the Android development team, this will benefit both developers and users. Developers will see fewer uninstalls of their apps and users will be able to quickly get back into apps once they are re-activated.
The upcoming Bundletool 1.10 release will make this functionality available to developers using App Bundles. For developers who build apps using the Gradle Plugin 7.3, the team will create a new APK: archived APKs, which are small APKs that preserve user data until the full app is restored. This won’t be functional until the Android development team launches archiving to consumers later in the year.
APKs will be available for download through the Generated APKs API or in the Play Console through the App Bundle Explorer. This new functionality is open-source, so developers will be able to inspect the code, the team explained.
Micro Focus ValueEdge provides modular VSM capabilities
ValueEdge is a modular value stream management (VSM) platform that integrates with a company’s existing set of tools. It includes end-to-end VSM so that companies can improve their process from strategy all the way through to delivery.
ValueEdge has a cloudbased architecture, which allows it to be quickly deployed and can scale easily as needed. Analytics capabilities will provide companies with actionable insights that can be used to optimize processes.
Other capabilities ValueEdge provides include end-toend traceability, functional testing, and over 100 application integrations.
Knative joins CNCF as incubating project
The open-source platform for building serverless and eventdriven applications, Knative, is entering the Cloud Native Computing Foundation (CNCF) as an incubating project.
Knative helps reduce the barrier to entry for developers to work with Kubernetes because it allows them to manage, monitor, and operate it with less technical knowledge and time.
It is made up of two main components: Knative Serving and Knative Eventing. Knative Serving runs serverless containers and manages details of networking, autoscaling, and revision tracking. Knative Eventing provides universal subscription, delivery, and management of events. z
People on the move
n Zoë Kooyman was appointed as the new executive director of the Free Software Foundation (FSF). Kooyman joined the FSF in 2019 as a program manager, and has been the lead organizer of the FSF’s LibrePlanet event since 2019, including successfully converting the 2020 event online in just five days at the very start of the COVID-19 pandemic. She will replace John Sullivan, who held the role for the past 12 years.
n Platform9 has announced the appointment of its first ever Chief People Officer, Vishwa Kapadia. Kapadia had previously held executive positions at Dell and Intel. At Platform9 her work will focus on building a high-performing work culture that is diverse and inclusive.
n Gary Steele has been named Splunk’s next CEO, effective April 11. With over 30 years of experience in scaling SaaS operations and growing companies to the multi-billion dollar level, he will work to grow Splunk’s business. Graham Smith had been serving as an interim CEO since November 2021, and he will return to his role as Chair of the Board when Steele takes over.
Whatmakesagood
BY KATIE DEE
Despite the rapid evolution and constant change being seen in the software development industry, one thing has remained constant: the necessity for strong and capable leadership. In order for a development team to perform at its highest level, it needs proper guidance from a strong leader. This raises the question of what exactly makes for a successful modern-day development team leader?
Mario Cadete, head of San Francisco engineering at Bloomberg, said that placing a heavy focus on team communication is one of the most important qualities for a team leader. “I think it’ s becoming even more important to be even more effective in communicating and listening. The last two years have really stretched us with that, and so we really have to develop skills to do that, ” he said.
Cadete continued, “I think it’ s really important to be intentional in fostering an inclusive culture, which looks like an environment where everyone in your group can feel safe and can contribute their ideas… I think it’ s important that everybody has a voice. ”
Matt Mihic, head of engineering at observability platform provider Chronosphere, touched on the importance of building an inclusive culture as well. He said, “Anything that is interesting to build requires more than one person, there ’ s not a lot of single-person projects that are really meaningful and so, understanding how to work with and meaningfully support other people… becomes a core trait. ”
Communicating business goals
Rajesh Raheja, SVP of engineering at Boomi, believes that one of the most important aspects of leadership is being able to effectively make your team understand the ultimate goals of the business. He explained that software development is not just about completing the current project, it’ s how the project overall works towards company objectives.
According to Bryan Friehauf, SVP of enterprise software solutions at Hitachi Energy, effectively communicating the ultimate goal of the software being developed, in terms of customer satisfaction, is a key element of leading a team.
He said, “If you understand not just what specifically they ’ re asking you to do, but why… if you ’ re a senior leader you really need to understand what those problems are because then
you ’ re able to unleash that innovation to come up with a better solution than maybe even what the customer is asking for. ”
Gabe Monroy, chief product officer at DigitalOcean, talked about the importance of good prioritization skills when it comes to leading a team. He believes that the ability to prioritize properly is what distinguishes the leaders that have a problem saying no to team members from the ones that are actually delivering results.
“The leaders who have the maturity
teamleader?
to say
‘look, we can ’t prioritize this initiative right now, we have to focus on these other higher priority items, ’ those are the leaders that are delivering success, ” Monroy said.
Additionally, Rajeha stressed the need for a leader to act as a good team builder and a kind of coach. He said a good leader has to be sure that they have the right team members with the right skill sets to make for heightened productivity and a better overall result.
“Particularly, today in this time of the
‘Great Resignation ’ you need to be able to act as a coach and a mentor so that you can retain that talent that you ’ ve already attracted to your organization, ” Raheja said.
According to Ev Kontsevoy, CEO of Teleport, the most desirable attributes for leaders of development teams have changed exponentially in recent years. “In the last 5-10 years… the responsibilities of engineering teams have been dramatically increasing, ” he said. “So, if you are an engineering leader, you are now managing a team that is no longer responsible simply for writing computer programs. ”
Kontsevoy explained that because of this expansion of duties, leaders now need to have a broad background that extends beyond the technicalities of writing code. Developers are now expected to handle tasks that were previously not in the job description such as data security, data integrity, infrastructure management, and compliance. “You need to be a well-rounded individual because your team is now responsible for much more than just writing computer programs, ” he said.
Characteristics of a good leader
Cadete discussed the importance of managing your team without falling into the trap of micromanaging. “I think if you can more clearly communicate the outcomes that you expect, you can then manage those outcomes in a more incremental fashion, ” he said.
He explained that breaking down a larger project into smaller sections that can be completed independently gives the leader visibility into the whole project while also only checking in when a task is completed. “This will give people the space to work the problems out and try and achieve them, but also have it structured in a way where you can measure results. ”
This ties back into the communication aspect of leading a team of developers. According to Cadete, checking in when these incremental projects are complete also works to give the leader an idea of how well they are communicating the desired outcomes to the team. That way, they know if they need to adjust their language going forward.
Raheja also mentioned that a good leader has the ability to hear the opinions of the developers on their team while still managing those differing opinions and ensuring that the team stays on track to accomplish the core goal at hand. “Leaders need to be able to tell a very effective story of what we are going to do and how we are going to get there, but also be able to influence people and change certain opinions, ” he said.
Kontsevoy spoke about the velocity of software development and how a good leader is one that enables their team to achieve that pace. He explained that bogging your team down with too much red tape to cut through ultimately leads to non-functionality.
“And this is really hard to do because some of these new responsibilities that engineers now have are full of rules and regulations, so you as an engineering leader need to allow your team to move fast and break things without sacrificing security, for example, ” he said.
Friehauf also discussed the speed at which technology is advancing. He said that there is always going to be some new cool piece of technology that teams are going to be attracted to. “I think keeping the teams somewhat focused on the mission at hand while also allowing them to find some time where they can do some of those cool things gives the team a chance to be creative while also keeping them focused, ” he said.
Hubert Wong, co-founder and CTO of CaptivateIQ, said a good leader is one that is able to effectively uplift and encourage their team to reach their full potential. “You need someone who sort of inspires the team to think creatively and push themselves to grow and maximize the learning and growth of the team, ” he said.
Kontsevoy mentioned that it is all about striking a perfect balance
< continued from page 7 between what the engineers on your team want to get done and what actually needs to get done to keep up with the new regulatory requirements the team is operating under. To be a successful leader, you need to prioritize both of these aspects to keep your developers happy while maintaining proper compliance.
Remote management a challenge
Cadete mentioned the way that the transition to remote and hybrid work has reshaped the way teams are led. He spoke about the way leaders need to work harder to gain the level of communication needed without the accidental communication that happens in an in-person setting.
“In a hybrid setting everything is so intentional… People maybe don ’t want to interrupt their leaders or team members if they think the thing they want to discuss is not important enough. So you ’ re trying to create that kind of environment where you can have that accidental communication but do it remotely, ” he said.
Rajeha also spoke about the way that scattered teams operating in different time zones adds a new layer to developer leadership.
“A leader of a team across multiple time zones has to build an inclusive environment, ” he said.
He explained the importance of not seeming to give the more local members of the team preferential treatment by scheduling meetings in a way that considers different time zones. “It’ s about creating that safe and inclusive environment for all team members rather than selecting certain team members because [the leader] doesn ’t have the experience of managing a large global team, ” he said.
Friehauf also stressed that it is the team leader ’ s job to ensure that a scattered team maintains a healthy level of communication and collaboration, even if time zone constraints result in that communication being asynchronous. “It was a little disruptive at first… but making sure that everyone is participating in these discussions was an early-on cultural change that I think people have adapted pretty well to, ” he said.
Wong echoed the importance of asynchronous communication, saying that it is vital to write important things down and create artifacts for meetings or engagements that the whole team then has access to. “This helps to save the remaining time for that precious synchronous communication, ” he said.
Be inclusive and welcoming
Creating a safe and inclusive work environment is one of the most important tasks for any team leader; however, there is still progress to be made in making the software development industry a more welcoming place for women.
Dana Lawson, SVP of engineering at Netlify, said, “There’s reasons that women may not feel safe showing up in the work environment, and there are these opportunities to create more of a culture where you can really… make sure that you’re welcoming no matter what. ”
Lawson placed an emphasis on the importance of empathy when it comes to leading a team because it is almost impossible to understand the circumstances each team member is dealing with outside of work. She explained that the transition to hybrid work has helped to allow for more empathy and inclusivity because of the flexibility that it offers in situations such as single motherhood.
She also discussed how, as a team leader, there is an important responsibility to protect the women on your team. “I think there needs to be really intentional training, not just the fifteen minutes of how to not harass people… I think there's a huge opportunity to really look at how people show up and how you speak and how you give work out and give opportunities out, ” Lawson said.
She also mentioned that creating a workplace that feels safe and inclusive for all team members has to be a continuous practice. “You’re not going to read a manual and say ‘great everybody should work here and feel equal now, ’” she said. “I think that you have to continue to grow as the world is growing and hopefully become better in recognizing the things that didn't work in the past and that people are not going to tolerate anymore. ”
In addition, Lawson stressed the importance of actively listening to your team members and taking their comments or complaints seriously. “Don’t put on your blinders and be short-sighted. Apply the growth mindset, learn from your mistakes, own up to it, continue on, and be better, ” she said. z — Katie Dee
Dealing with team stresses, mental health
Mihic also touched on the challenges that leaders can face in keeping up team morale and working to avoid burnout. He believes this is particularly important in the world we are currently living in and all of the external stressors at play.
“Work is a huge component of people ’ s lives, ” he said, “So you want to make sure that as they ’ re dealing with stress outside of work, the workplace is offsetting that as much as possible. ”
Wong cited this layer of preventing burnout and prioritizing the mental health of team members as a serious problem facing leaders today. He said, “There ’ s a lot of uncertainty going on in the world right now… so we have to be conscious of that and understand how to navigate through these challenges. ”
Dev teams now more responsible for security
Mario Cadete, head of San Francisco engineering at Bloomberg, said that the transition to DevSecOps has only added to the increase in developer responsibility. “Security has to be a firstclass feature, and I think a lot of us are still figuring that out because, traditionally, security was left for the security team, ” he said. Cadete believes that the shifting of security left has and will continue to influence developer teams and the way they are expected to perform. “You do see things like DevSecOps teams being formed… and it’s becoming something that is a part of their core toolkit. ” Where security used to be somewhat of an afterthought for teams and their leaders, it is now at the forefront of their responsibilities.
Matt Mihic, head of engineering at Chronosphere, believes that the best way a leader can help their team cope with the new security aspect of the development process is to find somebody within the team who already has an interest in the security space.
“Security is a good example… We would leverage them as kind of consultants or advisors to the rest of the team, ” he said.
Mihic believes that this works to give team members the opportunity to specialize in one particular area as well as prevents developers from approaching security standards as if they are a burden. According to Ev Kontsevoy, CEO of Teleport, this increase in security responsibilities leads to heightened stress levels for developers. “Your team is now under the stress of responsibility and also complexity, ” he said. “Your responsibility as a good leader becomes shielding your team from these complexities… it’s about finding a way to tame complexity and keep it at bay. ” z
MARIO CADETE
Monroy echoed this, saying,
“As a leader, you really need to look after the whole person and not just the work part of the person. Everyone is dealing with stress and strain from the pandemic and all of that will ultimately affect the work, but more importantly, you have to care for your employees. ”
He explained that in order to accomplish this, leaders need to make an effort to care about team members beyond just the part of them that shows up for work every day. Humans are multifaceted, but these layers will ultimately blend together. This is why Monroy believes that giving team members the space to prioritize their mental health will make for more productivity and a better end result in the workplace.
Mihic explained that fostering a supportive and caring environment leads to higher levels of communication both within and between teams. “You really want to have that trust, and that comes from having that shared context and that human interconnection that really builds a lot of that, ” he said.
Executing on objectives is key
Rajeha went on to say that ultimately, the key indicator of a good developer team leader is their ability to execute objectives effectively.
“Ultimately, it is all about execution… So, they need to have a lot of orientation towards results and the ability to create actions that will work towards those results. ”
Mihic spoke on this as well, saying that a good leader will always have the ability to look ahead and see how the context that is given can eventually translate into a solid execution plan that the team can deliver on successfully. “As you get closer [to the end], it becomes less about the day-to-day execution and more about what the health of the organization looks like, ” he said.
Konstevoy also explained that a key attribute of team leaders, and successful development teams in general, is creating a culture of trust. Kontsevoy explained that allowing your team members to work in a way that comes most naturally will always yield better results than forcing a different method or tool on them. “You have to trust them with making these decisions and you, as a leader, need to operate around outcomes, ” he said. “Focus on what will be done, why it will be done, and when it will be done, but don ’t interfere with how. ”
Cadete said placing a focus on both the success and growth of your team as well as yourself will help to achieve this outcome-based approach to leadership. Allowing your team to find their own methods will not only help them grow as developers, but it will help you grow as a leader as well.
Kontsevoy also believes that a good development team leader should work to establish “default actions ” in the organization, meaning that if the leader cannot be reached and a predictable issue arises, there should be a set of standards established for the team that will allow them to handle the situation without the direct input of the team leader.
“If you have that, then there is not a lot of context switching simply because the team is running on autopilot, ” he said. “In the best case scenario, a leader should only be focused on things that have broken or if something extraordinary happens. ”
According to Rajeha, another detail of good leadership is ensuring that the developers on your team know that their primary goal is not to write code, but rather to deliver customer value and achieve the goals of the organization. “It is never going to be about the quantity of code delivered, ” he said. “It’ s about the quality of how well the team has met or exceeded the customer