The term Enterprise Developer has been showing up quite frequently over the past few years in Developer Nation and other programming communities. In our experience, this term can have slightly varied meanings, but it often relates to the Developers working in big teams/organisations, supporting enterprise-grade software development.
To shape a more accurate definition and learn more about Enterprise Developers’ roles, responsibilities, and challenges, we decided to ask them directly. Hence, starting this new series of blog Interviews at Developer Nation, talking with Enterprise Developers, giving our community more clarity about their work and how it differs from a startup environment.
The first interviewee in this series has requested us to keep their identity anonymous; hence respecting their privacy, we will call them Dev A.
Ayan: Can you briefly describe your job as an Enterprise Software Developer
Dev A: I work as a Software Developer at an investment firm, my work revolves around writing tools and data pipelines that help traders/operations and also data pipelines that run during and pre/post trading.
Dev A has briefly described their work as building tools and data pipelines that help investors trade on the platform.
A data pipeline is a function that processes raw data from various data sources and then posts it to a data warehouse for further analysis.
Ayan: What are some of the challenges and benefits of working at a large company compared to a startup?
Dev A: Challenges – a lot of existing infra to go through and gain understanding on. Slow review and deployment process, lot of stakeholders.
Benefits – Learn about processes, scalable solutions, how large infra is maintained. You get a hang of good practices.
Processes make it easier for developers to work and support each other in a big team setup. However, these processes can also sometimes become bottlenecks when new features of patches in the code need to be shipped to the production. As Dev A mentioned, the review and deployment process is slow, and many stakeholders are there whose reviews are needed. On the good side, these processes ensure the quality of the code having it being reviewed by multiple parties. Especially in financial organisations a bug showing an incorrect balance can be a disaster for the product.
Ayan: If you could change one thing about how your organization operates, what would it be?
Dev A: n/a
I asked Dev A if there’s anything they would want to change about the way their organization operates. Apparently there isn’t anything that is rare but good to know.
Ayan: How is AI impacting your day-to-day life? Is there a policy regarding the use of AI tools in your company?
Dev A: Not allowed to enter proprietary information in LLMs. Consider anything entered into ChatGPT is as good as posting it on social media.
AI helps generate quick commands for generic things – e.g bash commands, generate snippets, etc. Stack overflow replacement in a crude way.
From the response, Dev A’s org seems to have a strict policy when it comes to using Large Language Models like ChatGPT with any proprietary information. However, Dev A has been using it to support their development work, like generating Bash commands or code snippets to automate aspects of their job, using it as a Stack Overflow replacement – Very Interesting.
Ayan: How much of your work depends on specific tools, frameworks, programming languages, or cloud providers?
Dev A : Many libraries are inbuilt and maintained in-house, but many are used from outside as well. e.g redis, github etc.
This one is a classic. To be easily maintainable a big software project is usually organised into libraries, which are easier to maintain and reuse in different projects. As Dev A mentioned, many libraries are built and maintained within the org itself. However, like any other software product, they also depend on other work in open source and outside to support the product development.
That was all from this interview, but keep an eye out for more. If you know anyone we should invite for this kind of interview session, please feel free to write me at email@example.com
I had a chance to speak with Liam Arbuckle, the acting CTO of the game/web development studio/collective (100% open-source) called Signal Kinetics. Liam is based in Australia.
What is it that you’re working on?
Right now, we’re working on a citizen science game engine (sort of like Project Discovery in Eve Online, but integrating other games as well). We’re aiming to increase science discovery/contribution for everyone through gaming by allowing people/players to:
1. Contribute to real-world scientific problems/experiments
2. Help train ml/dl datasets/algorithms (sometimes through their actions in-game)
3. Engage with users, especially those in the scientific community (we’re working on a service called Arcadia which is basically a fork of Buddypress that will implement features similar to services like Steam & Facebook Games)
So you are targeting citizen scientists? Is there a particular age range you are targeting?
I believe information should be free, when I was younger, scientific journal access was expensive, also, there is a lack of engagement with the science community in Australia. I want to create something that can’t restrict a person from the science community due to their age, gender, spending ability etc.
What inspired you to create your Game Engine?
I attended Science hackathons, science and gaming, made mars rover, most recently I contributed to the Open Source Rover by NASA’s Jet Propulsion Laboratory.
What else are you working on?
We’re also working on our own game (with potential partnerships with Savy Soda, as an example, in the pipeline) and hoping to make our experience with Arcadia modular:
1. Users can contribute to scientific research through playing any game in the world by installing a custom add-on designed by the Arcadia developers for the game.
2. Users can have a “bank” (similar to the Pokemon Home system) that shows their games library, achievements and item list/screenshots in the Arcadia web app.
There’s no real large gaming community to play games online. I want to build a community, where gamers can share screenshots, there’s an overlay to watch people playing games, I want to make mini-games too, there’s no real limit. I used to game on a Samsung phone which had a play status, I could stream to Discord. I want to expand this idea to non-Samsung games, add a community with no limits – basically information freedom, with no blockage or limits.
3. Users can choose which games to play.
What are your immediate goals?
Get industry connections.
What type of connections are you looking for?
I’ve made contact with Melbourne-based game companies so I’m on track with that. I’m looking for grants, an investment to work on the blockchain element, get connected with a marketing team, get a few 1,000 players to start off with, and then connect with more on social media.
Right now I don’t have the money to finance, we’ve had people come online to help with the open-source. I’d ideally like to get some consistent engagement rather than have contributors that do the occasional work.
If it wasn’t for Covid-19 I would have moved out of Australia, there are huge problems with setting up in Australia, no grants, no infrastructure for tech companies.
I want to start contributing to established games and engines to gain experience, connections, contribute and potentially expand my team’s vision.
Are there any particular games that you have in mind?
Minecraft, l would love to contribute to that, I Love that you can make mods. I think Minecaft is crying out for more integrations, so I would love to get connections with Mojang. I’ll take any company that has a level of open-source ethos.
Continue working on the game, however, this requires money. A lot. And I’m not rich! I’m primarily focusing on a media kit that will later be used as the basis for a Kickstarter campaign.
When do you plan to run the Kickstarter campaign?
I won’t have the game finished before the campaign starts, I want to put together a media kit, assets, I’m going to an incubator to learn how to market the game, understand which social media do we target, and which niche users. I have been involved with other Kickstarter projects and know I can’t be too broad with who I target at first. I think in 3-4 months we will be ready to launch the Kickstarter campaign.
I’ve got a team of about ~20-30 people (with most being external/outside collaborators, there are around 10 people that run the show and contribute on a consistent basis). These people have varying levels of experience in game development, design, and web app construction (among other things).
Are you actively looking for more contributors? If so, what level of experience are you looking for?
I’ll take anything, I won’t say no to anyone, I find that the science community say no, if we say no, we’re just defeating the purpose of the project.
We would prioritise people who have c#, and website building experience. Once you get your base established, then start with junior developers. We don’t want to be too closed, but also we don’t want to be too open and not get work completed.
We are also working on a partnership with the Swedish Power Metal band Veonity to contribute with us on officially licensed songs for our games and the Arcadia platform – recording is due to start in July which is very exciting!
I love Star Wars, at 12 I went into robotics, and in 2016-2017 I worked to build a physical R2D2. In year 10 I started a computer science class at school. Unfortunately, computer science investment in schools is poor, but I had a good teacher that encouraged younger students who were not yet at the age to attend a class to learn in their breaks. I learned Python, and in year 11 I started working on GitHub, learned Ruby on Rails, Gem.
I ended year 11 and decided I wanted to start developing. There are no astrophysics courses near to me. You can build games and tell stories from computer science.
How do you make decisions when it comes to your next self-improvement step? Do you look at data, attend conferences?
I attended the recent Atlassian conference. Also, there are 20 of us that meet at a bar regularly to talk about problems, I have joined a few teams and am developing professional skills.
I pitched to investors last year and got 10,000 AUD but it doesn’t last very long in a startup.
I like to see people in the physical world, go to Python global conferences, learning what’s the newest feature with the project that I can use to my advantage.
Has it been a benefit to have online conferences due to Covid-19?
I would never have been able to afford travel to conferences until this year when I’ve started making money, the online conferences are more accessible.
Before, if you are not fully embedded in a developer community, there is not much incentive to go to in-person conferences, there is a huge cost to fly overseas for a conference, and no guarantee that project of interest will be discussed, no guarantee people that people will help you there. There are more frequent conferences now, by more teams, not just big companies doing them.
Do you have a mentor? Or are you mentoring someone else?
I’m a mentor at the University Codjo, mentoring 14-15-year-olds with Autism / ADSD. For me, the computer sciences teacher was a mentor at school, but I don’t have anyone mentoring me right now. I wouldn’t need a mentor right now for teaching me, rather someone who can structure how I do things, I’m not the best, I’m not perfect, people with experience have given great advice to me.
Do you have any words of wisdom for others thinking of building their own games or game engines?
1. I echo the words of “information wants to be free” if everyone open sources and has no barriers, that would be my ideal world!
2. If you want to make any media, games are great, they engage people, I lose interest in reading novels, in games, there is so much you can involve other people with, everyone can make their own stories. There’s engagement.
What’s in your toolbox?
Unity for most of my games stuff
Starship, customisable prompt for my terminal – makes everything look so much cooler. I love customising my devices.
Keybase for communications, encryption and there are git integrations.
Visual studio code
Jira by Atlassian – more of an industry-standard than what I was using before.
MacBook M1 for on-the-go stuff, I duel boot with Linux when testing.
How do you work as a distributed team? What tools do you use?
Keybase is the main tool, git commits can be seen in there and there are cool bots and tools you can use. It was also acquired by Zoom which shows that things will be great for global teams.
We also use Facebook messenger or WhatsApp for casual talk.
Git commits can be sent there, cool bots, and tools you can use. Was acquired by zoom, shows that things will be great for global teams.
What do you need right now?
Right now direct partnership with companies is needed, funding is so important. Everyone in the team is paying out of their own pockets. The best way we can succeed is with funding so the Kickstarter will work, with partnerships, it will give our Kickstarter legitimacy.
If you’re interested in joining forces with Liam and his team either as a developer committed to open-source, or a partner, you can reach Liam via his GitHub profile.
We love to hear your development stories, get in touch to share yours.
Recently there’s been a lot of discussion on the role of women in tech. There’s a rising concern about the stereotypical views towards women in the nearshore services market, as the recent article by our partner Belatrix also shows.
At VisionMobile, we believe in the people behind the numbers. While it’s important to understand numbers, trends and segments, it’s equally important to understand the people who buy our products and services. This developer profile is one in a series designed to help us get to know some of the people behind the statistics.
Job title and company:
Founder, Independent Consultant at Carrera Group
Florida, United States
Enterprise software expert for hire. “I like doing independent work,” he explains, “there’s no enterprise baggage.. You’re there to do a job, to solve a difficult problem, to help clients through something.” There’s where he likes to focus: on fixing problems and doing so outside of a company’s culture. He continues, “I know we’re not going to rewrite this whole thing: I’m here to do one specific thing and provide some development help or architectural advice to help get you out of a jam. For six months, I can help with this antiquated technology.”
He works across multiple technologies, but focuses on the healthcare industry.
Favorite project built recently:
Kastroulis reports how he enjoys working on new projects with new challenges. His favorite project was building a high performance column-store database kernel. Another recent project was an electronic prescribing and ER discharge application for both the web and iOS devices.
As do many developers, Kastroulis prefers to use the appropriate toolset for the project – and to choose toolsets he’s most familiar with. Enterprise developers may not have that flexibility, but independent developers often do. His favorite toolset is Visual Studio Code, which works across platforms. He also uses node.js and a lot of JetBrains tools (especially for C and Python). On a Mac he uses Sublime Text and command-line tools. Of course, for source code management he uses GitHub and Git on the command line. “I’ve worked with Amazon Web Services (AWS) and Heroku, but Azure is my cloud host of choice,” he adds. “Azure is easier to work with and it’s HIPAA compliant.”
Best developer-related advice you would give to another developer
While it’s hard to predict the future, Kastroulis advises developers to “get an idea of where the world is headed and try to get there first.” He concedes that you may not always be right, “but follow your gut.” Take advantage of industry knowledge, and take advantage of the expertise you gain focusing in your industry (healthcare, financial, and so on).
At VisionMobile, we believe in the people behind the numbers. While it’s important to understand numbers, trends and segments, it’s equally important to understand the people we’re trying to reach with our research. This developer profile is one in a series designed to help us get to know some of the people behind the statistics.
Company, job title and duties:
Movel: CEO, developer entrepreneur. Movel is an enterprise development company, and Levent says, “I code on a daily basis because other people are doing the less interesting stuff.”
Movel focuses on mobile, but that’s too easy of an answer. They work on both native and cross-platform apps (iOS, Android, Windows Mobile, Phonegap, and more.) Levent emphasizes that mobile development doesn’t mean just the front-end app. The back end, he points out, is the biggest part of a mobile project, particularly one with multiple front ends. The back end includes key capabilities such as RESTful, secure APIs and identity and transaction management.
Levent explains that when building enterprise apps, most of a mobile app’s back end applies to a Web app/client’s back end as well. As he builds enterprise solutions, he’s able to build a “21st century back end.” Everything that applies to a mobile app backend applies to a Web app as well, bringing Web apps up to speed for 2016.
While some developers have a specific language they prefer, Levent and Movel use a mix of languages and clients. AngularJS, however, is a favorite. He’s also fond of Google’s Polymer framework and feels it’ll be a standard in 6-12 months … if Google doesn’t shut it down.
While there’s something to be said for using established frameworks and languages, when a new, promising technology comes along, he takes a pragmatic approach. If a new technology provides sufficient promise, he discusses the potential risks and rewards with the client, along with the backup plan. If the client agrees, they’ll try those less established technologies on a new product.
As with some people, Levent is frustrated with the Apple ecosystem, and frustrated by Apple. And like many of us, he says, “I can’t live without my IPhone 6 Plus.” But he uses a variety of devices for testing and exploring. He contrasts iOS devices to Android devices like this: “If I want to use a small computer, I’ll use Android. If I want to use a phone, I’ll use my iPhone.”
He also has an Internet of Things (IoT) shop with about 20 Raspberry PIs running office projects like presentations, dashboards, and temperature sensors. The Raspberry PI is his favorite of this genre for “general, light computing power.” In fact, he says, these eliminate the need for desktops in many applications with the open source Raspbian OS. Arduinos, by comparison, are more limited, but useful for training.
They don’t need any Windows computers, he says, since their MacBooks and Macs run Parallels.
Favorite project built recently:
His favorite recent project stands out to him not because of the technology used but because of the solution. Built for an educational nonprofit, the solution streamlines the application process for college. US high school students use the app to more easily apply to multiple colleges.
“Nothing can touch the power of the Chrome developer tools,” even simulating slow connections, network traffic and simulated security issues.
But Movel doesn’t lock its developers into a particular toolset. “That’s what’s beautiful about development nowadays … it’s all open unless it’s Adobe (PDF).” Some prefer no IDE at all, others love heavier IDEs. “Use whatever makes you more efficient.”
They do, however, enforce backend standards like Ansible and Docker.
Best developer-related advice ever heard
“Premature optimization is the root of all evil,” commonly attributed to Donald Knuth. He explains, we need to understand the art of creating the minimum viable product that addresses the business problem.
Best developer-related advice ever given
“Get involved in local meetups and hackathons.” He continues, “Here’s what happened to a lot of developers with the Internet. Everything became impersonal, even resumes. But it takes away the joy. Get out to talk with like-minded people to discuss tools and techniques. You’ll learn stuff you wouldn’t come across in your usual stream, be that Twitter, GitHub or other social media. Everyone you follow is likely like-minded. This takes away the coincidences – local encounters, conferences, meetups, hackathons – all give you a chance to get out of your comfort zone.”
This advice applies to not just new but to experienced developers. He counsels to not get too comfortable: instead, build a trusted network of real people you meet and spend time with. “We grow based on our environment and who we know. When we increase the caliber of people we know then we can grow in leaps and bounds.”