началоstart ~ софтуерът-и-азsoftware-and-i ~ биографияcv/resume ~ библиотекаlibrary ~ снимкиphotos ~ детскиkids' ~ | english |
az()svilendobrev _ com
g'day.
i've been making software for 30+ years, on 3 continents, as projects of all sizes and levels of impossibility. Seen many different terminals, languages, designs, projects, customers, teams, organisations and cultures, and have met even more different attitudes.
So i found that the more interesting and difficult part is.. the people, while the technicalities are somehow solvable. Software is just a limited, twisted way of communicating knowledge between people, through space and time - and it's people who cause anything. Making software is a game of cooperation, now vs future-and-past, exercise in correct thinking, with all the participants being translators - and Trust being the most important feature.
And i found i can successfully mediate between the extremes - western and eastern thinking, technical & applied, experts & newbies, gears & art, real & virtual.. And i put passion in my work and do care for it. i do trust people.. and thus weigh them. i work With, not just For. i fight For, not Against. i do work, not time. Putting toys at github.com/svilendobrev.
Well.. i make (software) projects from ideas, people and software. Be it possible or not, regardless what has to change - software, organisation, people, or.. me. As Life is Change..
Shortage of people? No. Inefficient thinking, still trying to store human knowledge about reality in primitive languages. Reality.. is very complex. Complexity is fought with structure. Structure, within knowledge, means languages - specific for the notion, domain, product, project, task, and even people.
i love idea-generating, nice software, mentoring, team making, steep changes, cultural diversity, organisational building, improvisation. i can help to efficiently make effective software, and tune the community and culture to allow for it. i make languages that talk the patterns of the task. And attitudes that empower people. So one can start solving the real issues.
So.. Hands-on software mentor, leader, advisor, “playing-trainer”, architect, CTO, hacker... programmer. Friend? Could be. There’s more about me, software and Life at www.svilendobrev.com. Or dare read the brisk intro...
An Impossible Dream project? What about?
now in Varna, Bulgaria. Bulgarian and Australian citizenship
fluent Bulgarian, Russian, English
born 1970 Bulgarian, family+kids; sworn non-smoker, mountaineer, biker
the Team as live, self-tuning instrument for translating knowledge into software; organisational patterns, cultures and health ; leadership and empowerment; proximity + communication patterns, de-hierarchization
mentoring, teaching, inside-trenches organisational analysis and coaching... and learning ; philosophy of software
knowledge and technology management, requirements engineering, audit + analisys - of code, workflows or organisation
methodologies, agile CrystalClear vs CMMi/formal process; outsourcing + distributed global development; mental gears, cultural differences, pair-programming, context-switching, attention to detail, selective stupidity
making languages; using general languages as carriers of much higher-level specific ones; generating code; self-interpreting objects; grammars, compilers, interpreters, virtual machines; interfaces, protocols, frameworks and aspects
usability engineering, use-cases; user experience, interaction, interfaces; analysis perspectives - technical + people, end-user + organisational; human-machine systems in general
testing as art; version, configuration and project management, life-cycles, estimation, negotiation, risk and resistance-points; documentation workflows, traceability, trackability; licensing
business analysis in many domains – software itself, media, content/metadata, accounting, HR, chips-design, bureaucracy/paperwork, betting, CAD/CAM, mechanics, physics, banking, hardware, maps, graphics, DTP, simulation
modeling, architecture, flows - data, code, events and time ; analysis; optimisation; efficient vs effective; persistency, databases, messaging, bi-temporal data+code, semantic relations; sync/async; client-server vs standalone vs distributed
languages: python 25y, C/C++ 25y, javascript 6y, java 3y, graphql, html/css 25y; perl make sh; many many more.. from prolog to erlang/clojure to various assemblers and machine languages
toolkits/frameworks: django flask react nodejs express ; qt wx gtk kiwi; sqlalchemy, STL; many more
platforms: linux, android, web, desktop, dos; apache; many compilers, assemblers, .. ; docker-isation
paradigms: object-oriented, functional, event-, rule-, dependency-driven, markup, behavioral, ..
persistency: xtdb, couchdb/mongo, sql - sqlite postgresql ; rdf, sparql, key-value; corba
tools of the trade: vim, linux, vcs: bzr/git/hg/svn/cvs; e2e test-ing,selenium; Jira,redmine, wikis in general
my own python course (~90+ ppl passed last 10 years), a coding style, methodology, UIs, python clone, tools..
www as runtime env - service vs library; api-design; digital signatures, smartcards; search, accessibility, multi-linguality
devOops.. or more. Get job done, be part of it - software, hardware, or psychology; fix the dripping tap, machine, drivers or paperwork; teach, hack, negotiate, find a way, fight for it.. It's all one jazz.. Engineering
reverse engineering; search, anonymity; protections; social nets, digital identity
reflecting, exchanging ideas, having opinions, Do-It-Yourself, repairing stuff
artistic design and layout; apply knowledge across fields; making toys and playing
caring about what i do. With extreme attention to detail – which assumes freedom + no noise... and nothing fake..
Find a friend to be your senses.
Software is actually about people, not about machines.
Languages are your tools. Make them if no suitable ones.
One can't make decent tool/thing if has never been user of it.
Do not try to outsmart the user.. which can be yourself.
If you make something usable by idiots, only idiots will use it.
Association is a great thing - trust your common intuitional sense.
Trust is the essence of software. Machines trust 100%, while people.. don't. How much trust or distrust can you handle?
www is global village, anyone at near-zero distance.. but never zero. And one needs just that - warm touch - or good kick.
First rule of Leadership: it's all your fault.
Manager's choice: change People or.. Change people.
With time, places change people. Other way happens noticeably only while coming in - or switching on.
Stop coding Reality into bytes, grow up and empower yourself with domain-task Specific Languages.
Software is a (twisted) way of communication. Sometimes to yourself from Tuesday.
growing Swiss receivables management company.. FinTech. ~8 ppl software team (25-60 overall staff), remote, 4y-old in-house node.js/vue.js Event-Sourcing micro-serviced software. Somewhat chaotic.. "software-mirrors-the-org".. No more coding (?). Just.. other 90%. Try develop the team.. and "educate" management and other depts. Find out dev and system bottlenecks, "buy" time-resources to fix, automate, turn into apps. Play product-owner. Stop everybody-telling-tech-do-that-now. Streamline workflows, issues, bring in reviews, testing, CI/CD, UX study. Reverse-engineer to generate visual-map of event-flows. Try speed up system (and team) without breaking it. Even architect Future sometimes.. (or code: py-xtdb-datomic ; fastapi/openapi). Lesson - Remote does not help teaming.. in-person meetings bi-weekly are not enough.
small startup with friends ; Dutch and American customers, also friends. One about dental-insurance B2B workflow, other about truck-maintenance housekeeping. Doing all the technical hats.. machinery, product road-maps, frontend and UX, methodology, workflows, team of 3-7. Seeking maximum possible efficiency-per-teammate.. python, django, drf-replaced-with own django-orm-over-graphql, UI as React single page application via browser/editor generative framework. Mentoring 2-3 younger colleagues into better persons. (~ 90k python + 90k javascript and up)
branch of German semiconductors company. Caring for software teams in Varna and Sofia (8 people) and their capabilities and good "health"; representing software perspective in complex projects; mentoring and teaching people from various departments and backgrounds; pushing cultural, methodological and technological improvements - group- or company-wide, helping hands-on. Deeply embedded or application software, from assemblers to python, requirements engineering tools, chip-description and chip-testing tools, functional safety, methodology, organisation, management.
Dutch nearshoring company. Doing python courses for 20+ people - beginners, intermediate, advanced, noticed fast-growth pains.. so.. Did a study, interviewing in trenches or management, on ways of work, culture, technology, relations, teaming, pains, funs, etc, and suggested a few changes towards healthier agile patterns, attitudes and culture.
dozen new people, most straight from the uni... to become (python) programmers.. and a real software Team.. in about 4 months. Impossible? depends.. As long as proper mentality gets in, the rest is.. up to them. Maybe i did it. Meanwhile, auditing some core software and translating various APIs into python. (update 2019: they are all seniors now)
Put data in database. As is. Let it flow wherever, on its own. React on changes. Focus on user-stuff.. Personal and Usability - centralization is a tool, not goal. Two of us - a friend doing iphone app, and me doing architecture, protocols (weird "http-rpc-with-memory" over couchdb replication), the servers+web-app (17k python), rich android app (12k java)
wanna learn? have projects? c all. It will be interesting. All software making is actualy learning - just noone admits it.. (didn't work. A chicken-and-egg - eventual students want ready+paid projects, companies with projects want ready teams)
social - python-backend-integration framework (FB, twitter, etc. Flask, nose, selenium). in place/team that opposes change.
redefine search and decision in human terms.. Tech lead, philosophy, analisys, invention; mentoring young entrepreneur
brightBird.com - movie search+notification social service. Match+import metadata, user patterns, group+classify. Architecture, backend design+coding, data handling; 3ppl, 5months; 10k python/django, SQL, SPARQL
notionery: wild idea- a garden to grow your personal notions - remember, learn, express yourself, in your own terms - and translate to and from all else, incl. past versions. Few months of concept digging.. Semantical web5.. Too far fetched
moodyTV: content-discovery platform, many metadata sources; shown IBC2010-Amsterdam. Multi-platform app: Android thick on/off-line, web, desktop/qt; generated api. Personal channels, profiles+suggestions, manual faceted filters, sharing saved filters/searches. (3ppl, 6months, 8k python, 20k java).
UI-engine in python, embedded, linux/gentoo, media-player device; medium company, very entangled work / repository structure.. A bit extreme independence - Viva la liberte! - yeah, but without communication, software ain't edible..
my site (html php css javascript python/generation, shared apache, mod_rewrite)
desktop end-user client for official Customs.bg B2B document flow and exchange protocols - message threading, templates etc (python, 7k, 4 months, FSMs, soap, XML-signatures, smartcards, windows/gtk)
HOR - enterprise Human Resources + payroll management system, 90k python, sql, wxpython; 8 people 2+years; replace old legacy and represent an ever-changing, complicated and entangled legislation and relations, expected product life >10 years – hence max flexibility and expressive power. Domain notions like values and payflows, bi-temporal data and code, multilingual values,.. made several internal languages. Leading it all.. extreme Agile Crystal-Clear methodology; architecting, requirements, mentoring, project-management, inventing, coding..
STC- Singapore Turf Club's betting terminals+kiosks renovation – global outsourcing effort; 2 end-user-apps: 130k C++, 15k python, 2k java, 6people, 2+years; the team spent ~6 months overall onsite in Singapore, ~2 in Germany. CORBA, payments, realtime. Being core dev, architect, team leader+manager, all relations to other teams - WN-Konstanz, WN-Singapore, STC; difficult cultural mix + communication.. e.g. Requirements gathering via 3 hops which don't talk to each-other. Future-proofing, refactoring, wrapping and code/documentation generation. Most difficult + rewarding project - Hey, my team survived crossing 4 cultures, and "end-users said they like your software"! (upd 2018: 1000+ machines live)
topologic al parametric modeling language + control of mechanical technology - in CAM/CAE plant system; python
graphical 2D backend API from python into C++; fix + wrap equation-solver cassowarypy
a drawing framework - 2D hierarchy, MVC, polygon-processing, C++,python; visualise GIS map-data from arcSDE
organisational patterns - success in changing company culture - both as technology and people communication
new compiler for analog/mixed-signal Verilog-A/AMS, merge and maintain legacy compilers; testing and automate build; C, C++, sh,perl,make, lex,yacc,pccts; sun hp linux; full waterfall, requirements, autogenerate documentation - framemaker
tasting another language-culture-continent-society
learning about software made industrially - "pipelines"+ CMM4, and teaching about software made efficiently
made Sceti / Finix - personalizable accounting engine, in human terms+documents, user languages for reports, templating, operations, access-control. wave-calc. 70k C++ btrieve novell, 3 ppl. Change human-workflows. Still used.
prototypes of statewide medical record system, doctor's workplace. “obj-oriented” structural documentation flow
accounting software - rule-based correctness, ledger conversion, account-scheme on-the-fly-translation, automat ion
LAN maintenance - PCs, novell/dos/win/os2, Clipper, C/assembler
Missile-launcher simulators - 3D real-time animated simulation of combat for soldier training - real weapon, overhead projecting on huge screen, airplane/vehicle models, trajectories, trainer workplace; C++, assembler, physics, 3ppl
large accurate digital maps: make, compress, view, radar/GPS; i386/penpad
Danube river map+radar – GUI+map technology; prototype for Gabchikovo channel navigation
DTP software +Fonts - reverse-engineer, customize, use various DTP systems, make fonts+tools.. make all work in cyrillic
with 2 schoolmates: accounting over modems, clipper, C, i86 asm
set-based unification and Prolog interpreter - thesis, 500 Loc prolog ; Editor in C/asm and other stuff (PC i86)
statistical trends graphical analyzer-visualizer ; simple run-len gth graphics-compression lib (M6502 Basic + asm)
M.Sc. in Electrical Engineering / Computer Science
advancing course: 5 years taken in 4, twice more disciplines - all excellent
"advancing education" class of 4 students, 7 years taken in 4, gold medal
curated collection of audio records of tales, songs, theaters from LPs, CDs, radio.. and all the machinery behind it.. some old frozen version at http://gramofonche.chitanka.info
making and hosting a community forum of Sladka voda alterna tive school and supporting the school
see the code-link below for my open-source software
do-it-yourself.. the machinery of my site, and my home - www.svilendobrev.com/napravisam
teaching reverse-engineering/analysis – a few essays – lookup +svd, deadlisting, +fravia
e-mail: az()svilendobrev _ com
my site: www.svilendobrev.com
work, software, and me: svilendobrev.com/rabota
code, toys and projects: svilendobrev.com/rabota/mysoft.html ; github.com/svilendobrev
cv-biography-resume: svilendobrev.com/rabota/cv - printable-pdf - brisk intro -- linkedin.com/in/svilendobrev
Детски нещаKids' things
* книжкиbooks
* творения:легоcreations:lego
БиблиотекаLibrary
* снимкиphotos
* хайкуhaiku
* Коджа кая 2019Kodzha kaia 2019
* направи самdo it yourself
софтуерът-и-азsoftware-and-i
* биоcv
'2008-2019 ~ началоstart ~ софтуерът-и-азsoftware-and-i ~ биографияcv/resume ~ библиотекаlibrary ~ снимкиphotos ~ детскиkids' ~ | az()svilendobrev _ com |